scanf 返回值被忽略

img

明明已经添加了#define _CRT了还是显示这个,为啥,搞不懂

我没记错的话是scanf_s吧,好久没用vs编辑器了

这是警告,不用管,不影响编译运行

把 scanf 改成 scanf_s

https://www.bilibili.com/video/BV11R4y1s7jz/?spm_id_from=333.337.search-card.all.click&vd_source=ff999e4c728b7eb49d32d9d75917272e
看这个视频,后面有讲到

【以下回答由 GPT 生成】

抱歉,由于我是一名语言模型,无法运行和调试代码,因此无法给出具体的解决方案。不过,我可以给你一些常见问题的可能解决方案,以供参考。

通常情况下,添加#define _CRT_SECURE_NO_WARNINGS可以消除一些与安全相关的错误警告。但是,有时候即使添加了这个定义,仍然会出现警告或错误信息。原因可能是以下几种:

  1. 错误或警告信息来自于其他部分的代码,而不是与#define相关。此时,你需要仔细检查代码中是否存在其他潜在的问题或编译选项。

  2. #define _CRT_SECURE_NO_WARNINGS被添加到了错误的位置。这个宏应该在引入stdio.h之前定义,确保在编译器解析printf等函数之前启用对不安全函数的支持。

下面是一个示例代码,展示了正确地添加#define _CRT_SECURE_NO_WARNINGS的方法:

#define _CRT_SECURE_NO_WARNINGS // 在包含 stdio.h 之前添加宏定义

#include <stdio.h>

int main() {
    // your code here
    return 0;
}

如果你能提供问题的具体代码和完整的错误信息,我可能能够提供更准确的解决方案。



【相关推荐】



如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

试试scanf_s