在下面的代码中,
scanf("%s",str[i]);这句可以正常运行,但是写成gets(str[i]);运行结果就会报错
int main()
{
int n,i;
scanf("%d",&n);
char str[n][101];
char a[101];
for(i=0;i<n;i++)
{
scanf("%s",str[i]);
//gets(str[i]);
}
}
看到很多都在说这两个语句是可以等效的,不过看目前的状况这两个并不是完全相同有些区别。
建议改成这样
第一个读取空格之前的,第二个读取一整行的。
如有帮助,请采纳一下,谢谢