char s[8];s={"beijing"};怎么错了,beijing占7个字节,加上\0才8个

char s[8];s={"beijing"};怎么错了,beijing占7个字节,加上\0才8个怎么会不对?
最新回答
陞香洇染

2024-11-30 08:59:23

哈哈,char型
字符串
变量不能像数字型变量一样那样赋值。
在声明时可以赋初值(以下两种方式):
char s[8]={'b','e','i','j','i','n','g','\0'};
char s[8]=“beijing”;
这两种方式都不能后赋值。
出现的错误跟字节数量无关。
悦心自足

2024-11-30 08:21:35

【】中是数组的意思吧。要打也是,,,分开来打吧。b在ascii码中好像是66
追问
这个是输入字符串的类型,可以这样输,错误在那个8上,但是我就是不懂为什么那个8为什么错了
枫熙槿晨

2024-11-30 09:25:05

首先是数组的声明,数组在声明的时候可以连续进行赋值,即一次进行多个数组的元素的赋值,但进行声明后就不可以进行多元素的赋值(不包括memcpy),只能对每个元素进行赋值: