在一个函数内部,声明指针变量
char *p1 = "abc";
char *p2 = "abc";
cout<<(p1 == p2)<<endl;
输出结果是什么?求大神解释。谢谢
两个指针比较是否相等
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答
- xuexiacm 2014-10-24 06:21关注
返回:1
解析:
p1, p2指向同一块内存储单元(常量"abc"),且,p1、p2的值都为这块存储区域的首地址。
所以p1 = p2;
借助调试查看变量:
p1 0x000edc9c "abc" char*
p2 0x000edc9c "abc" char*输出cout << &("abc") << endl;--->000EDC9C
得知,都相等。解决 1无用
悬赏问题
- ¥100 关于使用MATLAB中copularnd函数的问题
- ¥20 在虚拟机的pycharm上
- ¥15 jupyterthemes 设置完毕后没有效果
- ¥15 matlab图像高斯低通滤波
- ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗
- ¥15 钢筋实图交点识别,机器视觉代码
- ¥15 如何在Linux系统中,但是在window系统上idea里面可以正常运行?(相关搜索:jar包)
- ¥50 400g qsfp 光模块iphy方案
- ¥15 两块ADC0804用proteus仿真时,出现异常
- ¥15 关于风控系统,如何去选择