scanf函数的使用
scanf()是c语言的格式输入函数,和printf函数一样被声明在stdio.h的头文件中,在这了使用scanf,我用了“计算两个数的和”作为例子。
#include <stdio.h>
{//计算两个数的和
int num1=0;
int num2=0;
int sum = 0;
scanf("%d%d", &num1, &num2);//输入数据-使用输出函数scanf(&取地址符号)
sum = num1 + num2;
printf("sum=%d\n", sum);
return 0;
}
在当前程序的第六行,我们就用到了scanf函数了,接下来就等待用户的输入,它接受的是变量的地址,所以在一般情况下除了指针型变量和数组名的时候一定要加上&。重要的事情说三遍!!!不要忘了&,不要忘了&,不要忘了&!!!
scanf的调用格式(“”,);
运行后按一下方式输出num1,mum2的值
33(空格)54
enter
报错:"scanf"返回值被忽略
看到这里肯定大部分人都认为这个运行的结果是vs2019运行出来的,其实不是,我运行之后是
没错!!!它有错误,我是怎么解决的呢?
在整个代码的最上方加上:
define _CRT_SECURE_NO_WARNINGS
于是它就成功的运行了,在网上搜了一下
因为scanf是C语言提供的,而scanf_s不是标准C语言提供的,是vs编译器提供的,最后这个程序终于运行了出来。
贴一下完整的代码
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
{//计算两个数的和
int num1=0;
int num2=0;
int sum = 0;
scanf("%d%d", &num1, &num2);//输入数据-使用输出函数scanf(&取地址符号)
sum = num1 + num2;
printf("sum=%d\n", sum);
return 0;
}
第一次分享学习中遇到的问题和解决方法,有很多欠缺和不足,希望网友们可以不吝赐教,多多批评指正