%s表示输出一个字符串,给出的字符指针变量名是str,那么系统先输出它所指向的第一个字符数据,然后自动使str加1,使之指向下一个字符,然后再输出一个字符。。。。如此直到遇到结束标志‘\0’为止(\0是最后被自动加上的,因此能够在输出时确定字符串的终止位置)~
注意哦,你最好是输四个字符进去,会补‘\0’,如果输入五个会越界哦,不同编译器会有不同的处理方式,最好不要用SCANF,这个函数功能不全,不能控制输入的字符个数。
fgets(str,4,stdin);
是
printf("%s",str);表示从这个地址开始输出直到遇到字符串结束符
main()
{ char str[5];
scanf(“%s”, str);
printf(“%s”, str);
}
str表示的是数组的首地址
但输出printf("%s",str)错了
应该是printf("%s",*str)
%s是要求输出一个字符串,而不是一个数据,这么用没有问题。