char* 和 char[]的区别

来源:互联网 发布:ddos攻击器源码 编辑:程序博客网 时间:2024/05/24 03:23

cha* p=“A STRING”;

char p1[]=“A STRING”;

char* 定义的是一个字符串常量,p指向的这个字符串是常量,是不可改变的,因此,*(p+1)=‘a ’    的做法是错的,内存为这个字符串分配了固定的空间,他被存储到全局静态区中。

char [] 定义的是一个字符串变量,内容可以更改,因此,*(p+1)=‘a ’    的做法是对的。p1可以理解为不可改变其指向位置的指针,即可理解为char const p1。他所占用的内存是自动分配,自动释放。

原创粉丝点击