scanf_s ("%[^\n]", str, 100);才能在MSVC上通过编译。这些微软自己造的函数只能在Windows平台上使用(只有MSVC和新版MinGW GCC可以使用),Linux等其他操作系统一概不支持。也就是说微软自己造的这些函数不能跨平台使用。类似的问题还有:以下C语言程序是没有语法错误的#include <stdio.h>int main (void) {...
scanf为不安全函数,scanf_s解决了这个隐患每个类型都对应有自己的输入输出格式,入int 对应%d,long int对应 %ld,float对应%f,double对应%lf 奇牛学院 麻婆豆腐 11 有任何问题都可以进来,大神免费解答问题 黑板上的律 强能力者 7 vs认为scanf不安全 建议你用scanf_s joyest 麻婆豆腐 11 来自百度百科ANS...
创建项目的时候,不要直接点完成,点下一步,取消安全周期检查就不会要求用_s了
为什么我的vs只要一..发生访问冲突难道不是你读入字符超过数组上限了吗%s读字符串会默认在末尾加一个\0,你要读入10个字符得申请11长度的数组,或者在scanf_s的里面再加一个参数限制读入长度 scanf_s(''%s'
1.缓冲区 缓冲区是一块存放临时输入数据的内存,我们在键盘上输入数据之所以不会马上显示,就是因为数据存放在了缓冲区,在上面例子中,当我们按下回车键后,缓冲区的数据会传送到标准输入流。2.标准输入流 标准输入流(stdin)是文件指针,scanf()就是从标准输入流或许数据。以上面代码为例,当执行到...