指针变量,var 和 &var 的区别

2023-12-03

#include <iostream>

using namespace std;

int main() {
    int* z = new int(9);

    cout << "address: " << z << endl;
    cout << "value: " << *z << endl;
    cout << "referance: " << &z << endl;
    return 0;
}

查看 cout 值,我期望地址和引用给出相同的地址,但输出如下:

address: 0x7fc452c032a0
value: 9
referance: 0x7fff5191b8d8

只是好奇这样做的原因,普通 value(z) 是堆中值为 9 的变量的地址,其中 var(&z) 是位于堆栈中的指针变量的地址吗?

这是一个可视化:

enter image description here

Is the


&z指定地址指针int * z存储分配地址的位置new int(9).

指针z和价值9存储在内存中的两个不同位置。

没有任何概念参考在这里,仅adresses.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

指针变量,var 和 &var 的区别 的相关文章

  • C# 中的 Culture 相当于 Java 中的 Locale 吗?

    C 使用文化的概念 这在操作上与 Java 中的 Locale 类似吗 或者底层概念是否存在显着差异 从文化而不是语言环境的角度进行工作是一种寻找正确抽象层次的尝试 从以类似方式做事的人群的角度来考虑事物 而不是谈论地理区域和语言 并有点疯
  • 如何指定CMAKE外部项目的编译器?

    我使用ExternalProject Add 包含一个外部项目 我想要的是能够做到 cmake DCMAKE CXX COMPILER
  • HttpResponseMessage 的内容为 JSON

    我有一个 ASP NET MVC WEB API 由于多种原因 由于没有授权而重定向 我不能只使用一个简单的对象并在我的控制器方法中返回它 因此我需要 HttpResponseMessage 类来允许我重定向 目前我正在这样做 var re
  • 如何在C编程中获取当前时间(以毫秒为单位)[重复]

    这个问题在这里已经有答案了 可能的重复 如何使用 ANSI C 测量以毫秒为单位的时间 https stackoverflow com questions 361363 how to measure time in milliseconds
  • 静态成员函数与C语言绑定?

    以下 C 代码可使用 Visual C 和 g 进行编译 struct S static void foo extern C void S foo struct T static void foo extern C void T foo a
  • 当“”可以分配给std::string时,为什么有“clear”方法?

    一个可以用string clear函数清空字符串 也可以使用空双引号 来执行此操作 有什么不同 当您分配一个空字符串时 编译器必须在数据部分存储一个空的 C 字符串 并创建代码以将指向它的指针传递给赋值运算符 然后 赋值运算符必须从数据部分
  • C++17 中带有 noexcept 的 std::function

    在 C 17 中noexcept 已添加到类型系统中 http www open std org jtc1 sc22 wg21 docs papers 2015 p0012r1 html void r1 void f noexcept f
  • 错误 C2064:术语不计算为采用 1 个参数的函数

    class Student bool Graduate return m bGraduate class School vector
  • 使用 boost::iterator_facade<>

    我有一个链表结构 struct SomeLinkedList const char bar int lots of interesting stuff in here DWORD foo SomeLinkedList pNext 它是现有
  • 按位非运算符

    为什么要按位运算 0 打印 1 在二进制中 不是0应该是1 为什么 你实际上很接近 在二进制中 不是0应该是1 是的 当我们谈论一位时 这是绝对正确的 然而 一个int其值为0的实际上是32位全零 将所有 32 个 0 反转为 32 个 1
  • 在标准库中静态链接时如何支持动态插件?

    假设一个应用程序myapp exe是使用构建的g 它使用标志 static libstdc 这样就可以安装在没有环境的情况下libstdc so myapp exe还添加了对某些功能的插件支持plugf可以通过动态加载dlopen来自共享库
  • 一些涉及类析构函数和删除运算符的内存管理问题?

    在阅读了一些教程后 我仍然不清楚 C 中内存管理的一些观点 1 当使用 new 运算符声明的类超出范围时 是否会调用其析构函数并释放内存 是否有必要调用删除运算符来释放类的内存并调用其析构函数 class Test void newTest
  • DLL 中的 XP 风格组合框

    我需要使用 C 和 WIN32 API 无 MFC 在 DLL 中创建 XP 风格的组合框 我设法在 DLL 中创建控件 不是以 XP 风格 我设法在带有清单的 exe 中创建 XP 样式组合框 但它在 DLL 中不起作用 为了让您的 DL
  • C语言:如何获取使用strtok()一次后剩余的字符串

    我的字符串是 A B C D E 分隔符是 如何获取执行 strtok 一次后剩余的字符串 即 B C D E char a A B C D E char separator char b strtok a separator printf
  • 如何从句柄确定进程是 32 位还是 64 位?

    如何从使用 OpenProcess 获取的进程句柄中获取信息 无论进程是 32 位还是 64 位 是的 IsWow64Process 毫无用处 令人烦恼 它的真正意思是 启用了 32 位模拟 如果您在 32 位操作系统上运行 则返回 fal
  • 如何最好地为 Visual Studio 2017 构建的 CMake C++ 项目设置输出目录?

    我使用 Visual Studio 2017 使用 vcxproj 文件构建 C 桌面项目 我喜欢默认行为 其中输出目录是项目下面的子目录 例如 myproj sln myproj vcxproj x64 myproj release my
  • 将函数作为函数参数传递

    Unity C 似乎无法识别Func lt gt 作为函数委托的符号 那么 如何将函数作为函数参数传递呢 我有一个想法Invoke functionName 0 可能有帮助 但我不确定它是否实际上立即调用该函数 或者等待帧结束 还有别的办法
  • 序列化时如何跳过 xml 声明?

    我正在尝试输出一个没有 xml 头的 xml 文件 例如 我试过 Type t obj GetType XmlSerializer xs new XmlSerializer t XmlWriter xw XmlWriter Create c
  • 字符串常量之前应有非限定 ID

    我目前正在编写一个 C 应用程序 它与 math h 结合实现了振荡器 我拥有的代码应该可以很好地用于该应用程序 尝试编译目标文件 但是我遇到编译器错误 很可能与语法 等有关 我认为这与命名空间有关 错误 终端输出 User Name Ma
  • 散列 hash_hmac 时,Convert.ToChar(0) 散列结果与 PHP 中的 chr(0) 不同的字符串

    我在 PHP 中有一个字符串 它被转换为字节数组并进行哈希处理 转换为字节数组的字符串如下所示 G 字符 0 便便 我需要 C 中的等效字节数组 这样我才能得到相同的哈希值 编辑 这是完整的问题 生成的哈希值不同 PHP api secre

随机推荐

  • 使用 Bcrypt 密码验证登录

    我有一个网站 我正在使用 bcrypt 编写注册 登录系统 我已成功将注册详细信息和哈希密码插入数据库中 我的问题是如何使用此哈希密码对用户进行身份验证 以下是我使用的代码 注册动作 font face arial font
  • 如何将数组传递给 Rails 中的 fields_for?

    我想用fields for在关联中的记录子集上 我有一个Month模型 其中has many payments 但在我看来 以我的形式 我只想拥有fields for其中一些付款 例如 fields for month payments l
  • 简单的 for 循环需要解释

    Since i i是缩写i i i 以下代码 for var i 0 i lt 10 i console log i i 应该输出 1 0 because 0 0 0 i 0 2 2 because 0 1 1 i 2 3 6 becaus
  • Xcode - 基于Target导入具有相同名称的不同头文件

    我有一个具有多个目标的项目 每个目标都构建非常相似的应用程序版本 但具有不同的图像资源和 plist 对于 plists images 来说这很好 但我使用 ShareKit 和 Appirater 框架 它们的配置带有 defines 的
  • iOS 正在将 28.0KB 的一些未知数据从我的应用程序备份到 iCloud

    我的应用程序因未将 不备份 属性设置为我使用的两个内部文件 并存储在 Documents 中 而被拒绝 我已经设置了该属性 并且它不再备份这些文件 11 5MB 但它仍在备份 28kb 的一些数据 我从 Documents 文件夹中删除了所
  • C 中的函数指针如何工作?

    我最近对 C 中的函数指针有了一些经验 因此 按照回答自己问题的传统 我决定对基础知识做一个小总结 供那些需要快速深入了解该主题的人使用 C 中的函数指针 让我们从一个基本函数开始指向 int addInt int n int m retu
  • 如何创建表 AWS Athena --> 映射 Json 数组?

    如何为 Json 数组格式创建表 Athena AWS JSON 格式示例 Tapes Status AVAILABLE Used 0 0 Barcode TEST1217F7 Gateway Test Report UsedGB 0 0
  • 将 ASP.NET MVC 5 从 .NET 4.5 降级到 4.0

    坐着面对一个有趣的问题 服务器不支持 NET 4 5 客户端没有提到这一点 但该应用程序是使用 ASP NET MVC 5 编写的 仅在 NET 4 5 上运行 所以降级dot net就意味着降级ASP NET MVC版本 我们遇到的许多错
  • 展开转场不触发

    我学习得很快 并为我的大部分应用程序奠定了基础 我有以下故事板 应用故事板 一切正常 例如 我在添加课程视图控制器上有一个展开转场 当您按下 保存 并且您返回到 您的课程 视图控制器时 该控制器会触发 当您在我的课程视图控制器上时 您可以选
  • Checkedtextview 滚动Listview后选中/取消选中

    我正在使用 viewHolder 和 getview 在 listvew 中开发 checktextview 填充检查 取消检查状态绑定从数据库运行良好 但是 如果我选中项目然后滚动列表视图 它将返回取消选中 这是我的自定义适配器代码 pu
  • SQLite 存储、检索和比较 DATETIME 字段

    我真的很难在 Objective C 中比较 SQLite 查询中的日期 这就是我正在做的事情 存储日期 这个文件告诉我使用下面指定的日期格式 但它似乎不正确 我尝试使用yyyy MM dd hh mm ss但也没有成功 NSDate to
  • 堆栈中的 Activity 过多会使应用程序变得非常慢

    最近我创建了一个社交应用程序 我没有使用fragment 项目快完成了 我有几个活动 例如用户配置文件 关注者 关注者活动 通常情况下它工作得很好 但是 如果用户单击 UserA UserProfile 活动 gt 然后单击 A 的关注者
  • MDN 示例中不必要使用 calc()?

    我刚刚读了 CSS 函数calc 在 Mozilla 的开发者网络中 第一个例子在本文使用以下 CSS 代码 banner position absolute left calc 40px width calc 100 80px borde
  • 受二次约束的线性目标最大化

    我有一篇论文中的编程公式 想给它一个解决特定问题的工具 作者将其描述为线性规划 LP 实例 但我不确定 公式有点像如下 max x1 x2 x3 s t x1 x3 x4 x5 lt 10 x2 x5 x3 x7 x1 x9 lt 10 我
  • Tensorflow 2.3:AttributeError:“Tensor”对象没有属性“numpy”

    我想加载借用的文本文件here 其中每一行代表一个 json 字符串 如下所示 overall 2 0 verified true reviewTime 02 4 2014 reviewerID A1M117A53LEI8 asin 750
  • Web请求标头的顺序重要吗?

    我正在发出 POST 请求以将图片上传到网站 页面中有一个FileUpload和一个input textBox 在fiddler中我发现页面正在使用Multipart Post请求模式发送一些数据 Content Disposition m
  • CloudWatch 警报:待确认

    我使用 CloudFormation 模板创建了一个 CW 警报 如下所示 MyAlarm Type AWS CloudWatch Alarm DependsOn CodePipelineSNSTopic Properties Action
  • 如何配置nextjs 9和ant design less的兼容性?

    升级后react react dom and nextjs发生此错误 发生构建错误 home lenovo node modules antd lib style index css 7 身体 语法错误 意外的标记 在 Module com
  • ASP.NET 全局错误处理程序中的 WebMethod:如何捕获 AJAX POST 请求中传递的值

    换句话说 使用 HttpContext 我如何检索传递给 WebMethod 什么时候在全局错误处理程序中 Kovu 给出了一个很好的例子如何做一个全局错误陷阱来抓取 WebMethod Global asax 中的错误 我认为他是从那里得
  • 指针变量,var 和 &var 的区别

    include