荔园在线
荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀
[回到开始]
[上一篇][下一篇]
发信人: xsosx (I believe………), 信区: Program
标 题: Re: char *p="hello world"和char p[]="hello world".
发信站: 荔园晨风BBS站 (Tue Apr 5 20:04:02 2005) , 站内信件
直接copy下来的:
字符数组a的容量是6个字符,其内容为hello\0。a的内容可以改变,如a[0]= ‘X’。指针p
指向常量字符串“world”(位于静态存储区,内容为world\0),常量字符串的内容是不可
以被修改的。从语法上看,编译器并不觉得语句p[0]= ‘X’有什么不妥,但是该语句企图
修改常量字符串的内容而导致运行错误。
char a[] = “hello”;
a[0] = ‘X’;
cout << a << endl;
char *p = “world”; // 注意p指向常量字符串
p[0] = ‘X’; // 编译器不能发现该错误
cout << p << endl;
【 在 jiffies 的大作中提到: 】
: 有区别吗?谁能解析一下。
--
I believe......
※ 来源:.荔园晨风BBS站 http://bbs.szu.edu.cn [FROM: 192.168.111.89]
[回到开始]
[上一篇][下一篇]
荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店