请各位帮我看下我这个程序为啥会有烫烫烫
#include<stdio.h>
#include<string.h>
int main()
{
char book[40];
printf("what's the book? \n");
scanf("%s",book);
printf("the book is %s\n",book);
return 0;
}
这代码没啥问题啊,scanf输入英文字符串也正确的。数组名等于与数组首地址了无需&。
char book[40];改成char book[40]={0};
👏
book前+&
注:你的代码我可以运行
MinGW和MSVC测试没有问题。你遇到的有问题的输入是什么?我猜测和字符集有关。
注:给book加取地址符显然不会有效果。book本身会在需要时被隐式转换为数组的首地址,scanf就是这样的情况,因此这时加取地址符是没有必要的。