我不知道为什么我们总是这样声明
char* name="Srimanth"
而不是
char name[]={"Srimanth"}
我对这件事很陌生。所以在你给我答案的时候,请更具体一点。。
谢谢。
字符串文字是一种特殊、简单的数组聚合形式:您可以写"hello"
而不是{'h', 'e', 'l', 'l', 'o', ' '}
(注意终止零,它是自动添加的)。
请注意,数组声明不仅是可能的,而且有时也是可取的:
char str[] = "hello";
str[0] = 'H'; // OK
允许您修改字符串,而不是
char *str = "hello";
str[0] = 'H'; // Undefined behavior
这不允许修改。