关于检验字符串溢出
如果
char c[10];
gets(a);
那么如何检验字符串要小于9个字符;
或在输入时检验,或在输入后检验都行。
在输入后检验我觉得没什么意义了,因为已经溢出了!
大家帮忙分析一下
[解决办法]
一般提供足够大的缓存区,gets很“危险”因为过小的缓存区会直接溢出,这也为许多人所诟病
如果要“完美”一下,可以一个个读入,比较麻烦~
[解决办法]
用fgets吧
[解决办法]
#include <stdio.h>
#include <time.h>
void main()
{
char test[10];
fgets(test, 10, stdin);
puts(test);
}