麻烦帮看一下这些警告是什么意思

qq_40669215 2017-10-28 09:02:44
才学c语言,这是我的作业,输入3个字符,输出他们组成的三位数
...全文
172 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Vegebun 2017-10-30
  • 打赏
  • 举报
回复
最好用scanf函数想直接输入scanf("%c,%c,%c",&ch1,&ch2,&ch3);
HomerRo 2017-10-30
  • 打赏
  • 举报
回复
可以使用:scanf()函数,但是在文件的顶部加上一句:#define _CRT_SECURE_NO_WARNINGS来屏蔽报警O(∩_∩)O
大尾巴猫 2017-10-30
  • 打赏
  • 举报
回复
回贴后才发现3楼已经有正解。
大尾巴猫 2017-10-30
  • 打赏
  • 举报
回复
scanf_s要求在每个字符或者字符串后面,要有1个表示缓冲区大小的参数 输入一个字符,除了要 &ch1,后面还要个长度参数,这里是1。
scanf_s("%c %c %c", &ch1, 1, &ch2, 1, &ch3, 1);
red-fly 2017-10-30
  • 打赏
  • 举报
回复
scanf_s没有用过,建议使用常用的函数比如好理解一些
自信男孩 2017-10-30
  • 打赏
  • 举报
回复
建议了解一下scanf_s的用法,尤其是和scanf的区别,用法的不同; 试一下这种使用方法:
scanf_s("%c %c %c", &ch1, 1, &ch2, 1, &ch3, 1);
赵4老师 2017-10-29
  • 打赏
  • 举报
回复
在每个最后不带\n的printf后面加fflush(stdout); 在每个不想受接收缓冲区旧内容影响的scanf前面加rewind(stdin); 另外请检查scanf的返回值。
//请今后要用
char c;
scanf("%c",&c);
//时,都改为
char s[2];
char c;
scanf("%1s",s);
c=s[0];
//自动跳过一个或多个空格或Tab字符或回车换行,读取下一个字符。
#pragma warning(disable:4996)
大米粥哥哥 2017-10-28
  • 打赏
  • 举报
回复
直接用scanf就可以 建议百度scanf_s的具体用法 警告看不懂可以百度翻译 全是字面意思

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧