同一内存地址有两个不同的值

2023-12-03

Code

#include <iostream>
using namespace std;

int main() {
    const int N = 22;
    int * pN = const_cast<int*>(&N);
    *pN = 33;
    cout << N << '\t' << &N << endl;
    cout << *pN << '\t' << pN << endl;
}

Output

22 0x22ff74

33 0x22ff74

为什么同一个地址有两个不同的值?


为什么同一个地址有两个不同的数据?

没有。编译器可以优化任何提及 const 的内容,就好像您已将其编译时值写入其中一样。

请注意,如果您执行了诸如写入为 const 保留的内存等令人讨厌的技巧,编译器还可以生成在运行时擦除硬盘的代码。

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

同一内存地址有两个不同的值 的相关文章

随机推荐

  • 如何正确清理存储电子邮件的 SQL 查询

    我有一个查询 该查询转到邮箱并尝试将所有电子邮件保存在表中 它在大多数情况下都有效 但当电子邮件内容值包含双引号或单引号时 它会失败 如何修改我的代码以正确插入所有查询 num imap num msg imap if num gt 0 f
  • 如何在javascript中访问单击的表格行的特定单元格

    我有一个从数据库填充的 HTML 表 以及一个 jquery 函数 将客户端单击事件添加到每个表行 function TreeTable tr each function index this click function alert th
  • 使用 OpenCV 组合两个图像

    我正在尝试使用 OpenCV 2 1 将两个图像合并为一个 并将两个图像彼此相邻放置 在Python中 我正在做 import numpy as np cv img1 cv LoadImage fn1 0 img2 cv LoadImage
  • 保存为 GIF 后图像质量下降

    我正在开发一款 iOS 应用程序 它允许用户拍摄一系列照片 然后将照片放入动画中并导出为 MP4 和 GIF 虽然 MP4 呈现源质量 但 GIF 颜色等级是可见的 这是视觉比较 GIF MP4 我用于导出为 GIF 的代码 var dic
  • Android Firebase 消息传递 SDK 如何防范 Intent 欺骗?

    我使用 Firebase Messaging 创建了一个简单的项目 并使用以下依赖项 implementation com google firebase firebase messaging 20 0 0 我已经构建了该应用程序并检查了它
  • SwiftUI 登录页面布局

    我正在探索 SwiftUI 因为我正在尝试构建登录视图 现在我面临一个问题 这就是我想要实现的目标 正如你所看到的 我已经达到了这一点 但我不喜欢我的实现 struct ContentView View State var username
  • Twilio Studio:将短信对话日志转发到电子邮件

    我正在使用 SMS studio 与入站 SMS 消息进行快速聊天机器人对话 并希望在完成后将对话日志转发到电子邮件 我编写了一个使用 SendGrid API 的函数将短信转发至电子邮件 它独立工作 即 如果我将电话号码配置为在文本输入时
  • _泛型与可变参数函数相结合?

    在 C11 中 我可以创建一个函数 其原型如下所示 void myVaFunc const char const conv 我可以这样运行它 myVaFunc ici 1 test 2 该函数会知道 解析第一个参数后 还有 3 个附加参数
  • QImage 能够打开并渲染纯 16 位图像吗?

    我想标题已经解释了我想知道的事情 有没有可能用 Qt 打开和保存 16 位图像 我并不是指 3 8 24 位或 4 8 32 位 这与纯 8 位图像完全相同 我指的是 R G 和 B 的纯 16 位 与 Patrice 所说的相反 每个组件
  • 詹金斯奴隶中的“mvn:未找到”

    我有 Jenkins Slave 安装了 Java 和 Maven 环境是 Debian 我可以在控制台中运行 java version 和 mvn version 命令 但是当我尝试在 Jenkins 作业中执行 shell 命令时 我收
  • 如何将图像和文本垂直居中对齐?

    我在顶部有一个 DIV 和一些锚点 第一个是徽标样式 其余的是文本 我设置的样式如下 div nav top height 120px vertical align middle a nav logo background no repea
  • QMediaPlayer。如何播放带有多个音频的视频?

    有一个带有两个音轨的视频文件 Duration 01 05 09 12 start 0 000000 bitrate 2781 kb s Stream 0 0 Video mpeg4 Advanced Simple Profile XVID
  • 如果我睡10毫秒。我需要增加什么才能获得第二个?

    即我正在使用std this thread sleep for std chrono milliseconds 10 在程序循环中 如果我有一个变量在此循环中递增以显示经过的秒数 我需要递增什么 i e float x 0 对于每个步骤 x
  • 使用shiny将server.R中读取的数据传递到ui.R中

    In ui R 我首先读取了固定的样本数据 datT2 lt fread paste0 data 30062019KRB csv header TRUE sep stringsAsFactors FALSE encoding UTF 8 提
  • ggplot2 为平淡的 altman 图中的每个面添加几何线

    我有以下数据框 structure list Lightbox c 84L 67L 80L 63L 76L 66L 79L 81L 77L 82L 84L 67L 80L 63L 76L 66L 79L 81L 77L 82L 84L 67
  • jQuery UI 对话框定位

    我正在尝试使用jQuery 对话框 UI库 以便在将鼠标悬停在某些文本上时将对话框放置在其旁边 jQuery 对话框采用一个位置参数 该参数是从当前视口的左上角开始测量的 换句话说 0 0 将始终将其放在浏览器窗口的左上角 无论您当前滚动到
  • 获取连接表列的不同总和

    我在这里遇到问题 我希望有一个简单的解决方案 我会尝试使这尽可能简单 门票属于与会者 Example 得到结果没有子查询 你必须求助于高级窗口函数技巧 SELECT sum count OVER AS tickets count sum m
  • 合并重叠区间的算法

    我一直在寻找一种有效的算法来合并动态间隔数组上的重叠间隔 例如 开始时间 结束时间 明智的 1 2 4 8 3 10 becomes 1 2 3 10 合并后 因为 4 8 和 3 10 重叠 重叠意味着两个间隔的任何部分共享相同的时刻 我
  • 将sourcesJar任务添加到自定义Gradle插件

    我的公司最近为普通配置 存储库 跨项目的常见依赖项等 编写了 gradle 插件 总的来说 这极大地简化了我们的构建过程 并发现了项目之间的一些不一致之处 我们最近尝试添加一个sourcesJar任务到插件 但它不起作用 这是损坏的插件 p
  • 同一内存地址有两个不同的值

    Code include