C++中使用gets()报错解决办法

查询发现:gets() 不安全是因为你给了他一个缓冲区,但是你却没有告诉它这个缓冲区到底有多大,也不知道输入的内容到底有多大,输入的内容可能超出缓冲区的结尾,引起你的程序崩溃。

来自:C 中使用 gets() 提示 warning: this program uses gets(), which is unsafe.-站长资讯网

解决办法:可以用fgets替代:

char buffer[bufsize];  
fgets(buffer, bufsize, stdin);

比如我的情况:

char str[1000];
gets(str);

改为:

char str[1000];
fgets(str, 1000, stdin);

就可以啦~

你可能感兴趣的:(数据结构与算法,c语言)