c/c++语言开发共享C中&指针的结果是什么?

以下行的结果是什么:

int* ptr; printf("%x, %xn", ptr, &ptr); 

我知道ptr是内存中的一个地址,但什么是&ptr

    &ptr将是ptr所在的内存位置的地址。本质上它是指向指针的指针。

    它是包含原始内存位置地址的内存位置的地址(即,它是“指向指针的指针”)。

    &ptr返回指针变量的地址…指向指针的指针。

    这通常用于允许函数更改指针实际指向的位置。

    ptr不仅仅是“记忆中的一个地址”。 ptr是一个左值 ,一个包含地址的内存中的对象。 内存中的每个对象都有自己的地址,无论它拥有什么。

    由于ptr是内存中的对象,因此它也有自己的地址。 那个地址正是你在做什么时获得的。

    指针只是对内存中某些数据位置的引用。 *指针为您提供存储在该内存位置的值。 &运算符返回实际的内存地址,在这种情况下,它是一个指针。

    在C中,指针只是存储容器,其中包含一些其他数据块的地址。 在这种情况下,ptr保存一些int的地址,它本身只是内存中的一些数据。 所以&ptr是保存某些int的地址的变量的地址。

    &ptr只能存储在int **var或双指针变量中,因此&ptr只是包含另一个地址的ptr的地址。

      以上就是c/c++开发分享C中&指针的结果是什么?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/545301.html

      (0)
      上一篇 2021年1月11日
      下一篇 2021年1月12日

      精彩推荐