在一个函数内部,声明指针变量
char *p1 = "abc";
char *p2 = "abc";
cout<<(p1 == p2)<输出结果是什么?求大神解释。谢谢
返回:1
解析:
p1, p2指向同一块内存储单元(常量"abc"),且,p1、p2的值都为这块存储区域的首地址。
所以p1 = p2;
借助调试查看变量:
p1 0x000edc9c "abc" char*
p2 0x000edc9c "abc" char*
输出cout << &("abc") << endl;--->000EDC9C
得知,都相等。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。