p->age[SIZE]这个是指向age这个这符数组的头地址+(sizeof(char)*SIZE),假定可以使用=赋值,那么越界的同时会把hello放到p->age结尾之后的地方: 假如:p-age分配的地址为0x10000;那么p->age[SIZE]其实指向的地方是0x10050
age这个数组你只能取到SIZE-1,那么第SIZE个是什么?
strcpy(p->age,"hello");
[quote=引用 2 楼 小提琴家爱因斯坦 的回复:] [quote=引用 1 楼 liups 的回复:]p->age[SIZE]="hello"; 这种字符数组的整体赋值只能在字符数组初始化时使用,不能用于字符数组的赋值,字符数组的赋值只能对其元素一一赋值,赋值方法是错误的
[quote=引用 1 楼 liups 的回复:]p->age[SIZE]="hello"; 这种字符数组的整体赋值只能在字符数组初始化时使用,不能用于字符数组的赋值,字符数组的赋值只能对其元素一一赋值,赋值方法是错误的
p->age[SIZE]="hello"; 这种字符数组的整体赋值只能在字符数组初始化时使用,不能用于字符数组的赋值,字符数组的赋值只能对其元素一一赋值,赋值方法是错误的
69,377
社区成员
243,076
社区内容
加载中
试试用AI创作助手写篇文章吧