繁体   English   中英

为什么使用字符指针声明或定义字符串

[英]Why strings are declared or defined using character pointer

我不知道为什么我们总是这样声明

char* name="Srimanth"

代替

char name[]={"Srimanth"}

我是新来的东西。 因此,在给我答复时,请更加具体。

谢谢。

字符串文字是写数组聚合的一种特殊,简单的形式:您可以写"hello"而不是{'h', 'e', 'l', 'l', 'o', '\\0'} (请注意终止零,它会自动添加)。

请注意,数组声明不仅是可能的,而且有时是理想的:

char str[] = "hello";
str[0] = 'H'; // OK

允许您修改字符串,而不是

char *str = "hello";
str[0] = 'H'; // Undefined behavior

不允许修改。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM