scanf_s的一个问题
main() {
char c[30];
printf("Enter some characters:\n");
scanf_s("%s", c);
printf("%s\n", c);
}
我用scanf_s读取输入的字符后,没办法打印出任何东西,把scanf_s改回scanf就可以
这是为什么?
[解决办法]
首先,_s 类是针对内存泄露的安全问题,所以为VS2005所推荐.
其次,注重scanf_s,wscanf_s函数后必须有数字,表示最多输入多少位(不是字节数),假如没有的话就相当于0,假如输入的字符超出范围,输出时就是空,得不到正确结果.