gpt4 book ai didi

c - 为什么这个 C 字符串赋值是非法的?

转载 作者:太空宇宙 更新时间:2023-11-04 05:33:58 25 4
gpt4 key购买 nike

<分区>

案例 1:char s[][6]={"Hello","world"};在这种情况下,静态数组分配在只读内存中,元素从那里复制到数组中。在案例 2 中。

案例 2:char* s= "hello world"; 将其放入只读内存。

所以我的问题是为什么

char s[][6]={"Hello","world"};
s[1]="lucky"; //is illegal

因为如果元素是从只读内存复制的,那么为什么这个语句 s[1]="lucky"; 不能从只读内存复制到数组,因为数组是也分配给这个字符串文字,从那里,元素被复制到 s[1]。我已经阅读了很多答案,所有人都在说有什么区别,但是没有人说出为什么?请解释一下,因为我是初学者。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com