我写了以下内容:
#include <stdio.h>
#include <string.h>
char* getString();
char* getString(){
char str[10];
gets(str);
return str;
}
int main() {
char* s;
s=getString();
strcpy(s,"Hi");
puts(s);
return 0;
}
我知道 的长度str
必须小于 10,但即使我只写了“Hi”,也没有打印任何内容。据我看,应该没问题。编译器这么说fgets is dangerous and should not be used
。
屏幕上什么都没有打印的原因是什么?