开发者社区 问答 正文

两个指针比较是否相等

在一个函数内部,声明指针变量
char *p1 = "abc";
char *p2 = "abc";
cout<<(p1 == p2)<输出结果是什么?求大神解释。谢谢

展开
收起
a123456678 2016-03-05 10:09:50 3372 分享 版权
1 条回答
写回答
取消 提交回答
  • 返回:1
    解析:
    p1, p2指向同一块内存储单元(常量"abc"),且,p1、p2的值都为这块存储区域的首地址。
    所以p1 = p2;
    借助调试查看变量:
    p1 0x000edc9c "abc" char*
    p2 0x000edc9c "abc" char*

    输出cout << &("abc") << endl;--->000EDC9C
    得知,都相等。

    2019-07-17 18:52:58
    赞同 展开评论
问答地址: