当前位置:
首页 >
C语言scanf函数的返回值、scanf函数的安全版、在while条件中使用scanf函数
发布时间:2025/4/14
67
豆豆
生活随笔
收集整理的这篇文章主要介绍了
C语言scanf函数的返回值、scanf函数的安全版、在while条件中使用scanf函数
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
scanf函数的返回值,是正确读取的项数;读入一个数,返回1,读入2个数,则返回2,如此;
VC2012,先做一个测试程序;
提示出错;
error C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead.
改为使用scanf_s;
int _tmain(int argc, _TCHAR* argv[]) {int a, b, c;int ret;ret = scanf_s("%d",&c);printf("ret = %d\n",ret);ret = scanf_s("%d %d",&a,&b);printf("ret = %d\n",ret);return 0; }输出scanf的返回值看一下;
有的情况用到类似如下写法;
while(scanf_s("%d",&n)==1){
......
}
一直让用户输入数据,输入合法就一直循环处理;
写个简单例子跑一下;
#include "stdafx.h"int _tmain(int argc, _TCHAR* argv[]) {int n;while(scanf_s("%d",&n)==1){printf("您输入了:%d\n", n);}return 0; }运行如下;
如果输入合法的整数,就一直循环;当输入 f 时,scanf读取错误,没有返回1,退出循环;
如果scanf中%d是连着写的如“%d%d%d”,在输入数据时,数据之间不可以用逗号分隔,只能用空白字符(空格或tab键或者回车键)分隔——“2 (空格)3(tab) 4” 或 “2(tab)3(回车)4”等;若是“%d,%d,%d”,则在输入数据时需要加“,”,如“2,3,4”;
总结
以上是生活随笔为你收集整理的C语言scanf函数的返回值、scanf函数的安全版、在while条件中使用scanf函数的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: VC++格式化输出单个字符和格式化输出十
- 下一篇: 内存管理单元MMU学习