为什么scanf_s在函数调用时无法给变量赋值?

如上。在主函数可用scanfs,而在调用其他函数时就不能用了。

不会啊,你具体代码是啥样的呢?

你输入特殊符号了吧,比如换行

scanf_s用法及注意事项如下:

int    i,b;
int result;//函数返回值
scanf_s("%d ", &i);
scanf_s("%d %d", &i, &b);
result=scanf_s("%d %d", &i, &b);//运行结果为2,因为输入了两个数,一个a,一个b

char buf[5];
scanf_s("%s",buf,5);//表示最多读取4个字符,因为buf[4]要放'\0'
切记键盘输入是要少敲一位字符,因为数组最后一位要放结束符,例如当输入"abcde"时,buf字符数组里出错没有任何东西。
 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632