1. VS中使用scanf函数的问题
VS中运行以下代码:
#include <stdio.h>
int main()
{
int num1 = 0; // 初始化
int num2 = 0; // 初始化
// 输入2个整数
scanf("%d %d", &num1, &num2);
// 求和
int sum = num1 + num2;
// 输出
printf("%d\n", sum);
return 0;
}
出现错误:
这是因为VS认为scanf()函数是不安全的,可以使用scanf_s()代替,但是scanf_s()是VS自己提供的函数,非标准C提供的函数,只能在VS中使用。
最好的方法是在源文件第一行写入#define _CRT_SECURE_NO_WARNINGS。
2. 在VS中创建源文件自动出现#define _CRT_SECURE_NO_WARNINGS的方法
在VS的安装路径下有一个文件:newc++file.cpp,创建新的.c或.cpp文件时,都是拷贝这个文件的。所以应该在newc++file.cpp文件的第一行写入#define _CRT_SECURE_NO_WARNINGS,以实现创建源文件自动出现#define _CRT_SECURE_NO_WARNINGS。
- 找到newc++file.cpp的文件路径(可以使用Everything这个软件快速搜索),在VCProjectItems这个文件夹中。
- 将newc++file.cpp复制粘贴到桌面上。
- 打开桌面上的newc++file.cpp,在第一行写入#define _CRT_SECURE_NO_WARNINGS。
- 将桌面上的newc++file.cpp替换掉原来的newc++file.cpp。