常数的哪一个性质使其不可改变?

2023-11-25

今天我面临一次面试,其中有一个问题对我来说非常棘手。 面试官说“如何让常数能够改变它的值?”

我回答“使用指针”,并向他展示了一个例子:

int main( void )
{

        const int a = 3; 
        int *ptr;
        ptr = (int*)( &a );

        printf( "A=%d\n", a );
        *ptr = 5; 
        printf( "A=%d\n", a );


        return 0;
}

但他说这很好。但请告诉我哪一个属性使常量不可改变?他还说,有一种属性我们可以改变,并使其不断变化。

有这样的房产吗?它是如何工作的?


如果他说这很好,那么他就错了:尝试修改常量对象会产生未定义的行为。实际上,可能会发生以下三种情况之一:

  • 常量变量的行为就像普通对象一样,您会看到它的值发生变化;
  • 它存储在不可写的内存中,程序因访问冲突而崩溃;
  • 它的每次使用都会被一个硬编码值替换,并且您不会看到它发生变化。

该语言没有定义任何运行时属性const物体;只是编译时检查您没有意外修改它们。

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

常数的哪一个性质使其不可改变? 的相关文章

  • 在 C++ 中分割大文件

    我正在尝试编写一个程序 该程序接受一个大文件 任何类型 并将其分成许多较小的 块 我想我已经有了基本的想法 但由于某种原因我无法创建超过 12 kb 的块大小 我知道谷歌等上有一些解决方案 但我更感兴趣的是了解这个限制的根源是什么 然后实际
  • 为什么基类必须有一个带有 0 个参数的构造函数?

    这不会编译 namespace Constructor0Args class Base public Base int x class Derived Base class Program static void Main string a
  • 获取两个字符串之间的公共部分c# [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我需要的是获取两个单词之间的共同部分并获取差异 例子 场景1 word1 感言 word2 Test 将返回 公共部分Test 不同之
  • 当我单击 C# 中的“取消”按钮时重定向到新页面(Web 部分)

    Cancel button tc new TableCell btnCancel new Button btnCancel Text Cancel btnCancel Click new EventHandler btnCanel Clic
  • 使用实体框架从集合中删除项目

    我正在使用DDD 我有一个 Product 类 它是一个聚合根 public class Product IAggregateRoot public virtual ICollection
  • Guid 应包含 32 位数字和 4 个破折号

    我有一个包含 createuserwizard 控件的网站 创建帐户后 验证电子邮件及其验证 URL 将发送到用户的电子邮件地址 但是 当我进行测试运行时 单击电子邮件中的 URL 时 会出现以下错误 Guid should contain
  • try-catch 中未处理的异常

    try list from XElement e in d Descendants wix File where e Attribute Name Value Contains temp Name e Parent Parent Attri
  • 在 Xcode4 中使用 Boost

    有人设置 C Xcode4 项目来使用 Boost 吗 对于一个简单的 C 控制台应用程序 我需要在 Xcode 中设置哪些设置 Thanks 用这个来管理它 和这个
  • 如何在 VS 中键入时显示方法的完整文档?

    标题非常具有描述性 是否有任何扩展可以让我看到我正在输入的方法的完整文档 我想查看文档 因为我可以在对象浏览器中看到它 其中包含参数的描述和所有内容 而不仅仅是一些 摘要 当然可以选择查看所有覆盖 它可能是智能感知的一部分 或者我不知道它并
  • C++11 函数局部静态 const 对象的线程安全初始化

    这个问题已在 C 98 上下文中提出 并在该上下文中得到回答 但没有明确说明有关 C 11 的内容 const some type create const thingy lock my lock some mutex static con
  • 转到 C# WPF 中的第一页

    我正在 WPF 中使用导航服务 为了导航到页面 我使用 this NavigationService Navigate new MyPage 为了返回我使用 this NavigationService GoBack 但是如何在不使用的情况
  • 禁用 LINQ 上下文的所有延迟加载或强制预先加载

    我有一个文档生成器 目前包含约 200 个项目的查询 但完成后可能会超过 500 个 我最近注意到一些映射表示延迟加载 这给文档生成器带来了一个问题 因为它需要根据生成的文档来访问所有这些属性 虽然我知道DataLoadOptions可以指
  • gdb 在 docker 上立即退出“进程已完成,退出代码 1”或 lldb“数据包返回错误 8”。另外:如何在 docker 中允许进行 C++ 调试

    这花了我一整天的时间才找到 所以我将其发布以供将来参考 我正在 docker 镜像上开发 C 我正在使用克利翁 我的代码是在调试模式下编译的 并且在运行模式下运行良好 但是当尝试调试时 进程会立即退出 并显示非常丰富的信息 Process
  • C# 创建数组的数组

    我正在尝试创建一个将使用重复数据的数组数组 如下所示 int list1 new int 4 1 2 3 4 int list2 new int 4 5 6 7 8 int list3 new int 4 1 3 2 1 int list4
  • 通过等待任务或访问其 Exception 属性都没有观察到任务的异常

    这些是我的任务 我应该如何修改它们以防止出现此错误 我检查了其他类似的线程 但我正在使用等待并继续 那么这个错误是怎么发生的呢 通过等待任务或访问其 Exception 属性都没有观察到任务的异常 结果 未观察到的异常被终结器线程重新抛出
  • 过期时自动重新填充缓存

    我当前缓存方法调用的结果 缓存代码遵循标准模式 如果存在 则使用缓存中的项目 否则计算结果 在返回之前将其缓存以供将来调用 我想保护客户端代码免受缓存未命中的影响 例如 当项目过期时 我正在考虑生成一个线程来等待缓存对象的生命周期 然后运行
  • Fluent NHibernate 日期时间 UTC

    我想创建一个流畅的 nhibernate 映射来通过以下方式映射 DateTime 字段 保存时 保存 UTC 值 读取时 调整为本地时区值 实现此映射的最佳方法是什么 就我个人而言 我会将日期存储在 UTC 格式的对象中 然后在读 写时在
  • 我应该在应用程序退出之前运行 Dispose 吗?

    我应该在应用程序退出之前运行 Dispose 吗 例如 我创建了许多对象 其中一些对象具有事件订阅 var myObject new MyClass myObject OnEvent OnEventHandle 例如 在我的工作中 我应该使
  • 在基类集合上调用派生方法

    我有一个名为 A 的抽象类 以及实现 A 的其他类 B C D E 我的派生类持有不同类型的值 我还有一个 A 对象的列表 abstract class A class B class A public int val get privat
  • 如何确定母版页中正在显示哪个子页?

    我正在母版页上编写代码 我需要知道正在显示哪个子 内容 页面 我怎样才能以编程方式做到这一点 我用这个 string pageName this ContentPlaceHolder1 Page GetType FullName 它以 AS

随机推荐

  • 如何在 gtsummary 中向“未知”添加百分比

    我有一个连续变量 其中有很大比例的未知数 我的顾问要求我将百分比放在该栏中的旁边 这个 reprex 模仿了我想做的事情 library tidyverse library gtsummary trial gt included with
  • 在 JavaScript 中使用“prototype”与“this”?

    有什么区别 var A function this x function do something and var A function A prototype x function do something 这些例子有非常不同的结果 在查
  • python 与 __le__、__ge__ 的错误?

    是我还是Python对以下代码感到困惑 我希望 le 被称为a lt ab not ge usr bin env python2 class B object def ge self other print ge unexpectedly
  • 按行计算平均日期

    我希望按行获取平均日期 其中每行包含两个日期 最终我找到了一个方法 发布在下面 不过 我使用的方法似乎比较麻烦 有没有更好的办法 my data read table text OBS MONTH1 DAY1 YEAR1 MONTH2 DA
  • 错误:找不到函数“%>%”

    我正在 R 中运行一个示例 完成这些步骤 到目前为止一切正常 除了此代码产生错误 words lt dtm gt as matrix gt colnames gt function x x nchar x lt 20 错误 找不到函数 gt
  • 从 WAV 文件中解码 DTMF

    继我的先前的问题 我的目标是从 C 检测 WAV 文件中的 DTMF 音调 然而 我真的很难理解这是如何做到的 我知道 DTMF 使用频率组合 并且可以使用 Goertzel 算法 以某种方式 我抓取了 Goertzel 代码片段 并尝试将
  • 服务器端文件浏览

    我正在开发一个 Web 应用程序 它从一组文本文件中读取数据并将其映射到 MySQL 数据库 目前 该表单需要手动输入文件路径 但我想向该字段添加一个文件选择器 以使该部分的设置不那么繁琐 我找到的解决方案都允许选择单个文件 但我正在寻找一
  • 如何使用 Selenium 自动化 Firefox Mobile?

    我需要在 Firefox Mobile 中运行 Selenium 测试 有人能描述一个简单的方法来做到这一点吗 我的调查表明 Firefox 移动版不受支持Appium one two Firefox Desktop has built i
  • 通过获取每个子项的位置动态地将子项添加到 LinearLayout

    我在获取孩子的位置时遇到问题线性布局 首先 我动态添加一些按钮 然后尝试返回每个子项的索引并将其显示到TextView 我在这里分享代码 java源代码 private String categories private LinearLay
  • 使用 Sass 从媒体查询中扩展选择器

    我有一个项目类和一个紧凑的 修饰符 类 item item compact styles to make item smaller 这可以 不过 我想添加一个 media强制的查询 item当屏幕足够小时 类要紧凑 乍一看 这就是我试图做的
  • 向场景添加灯光没有效果

    我刚刚开始玩 Three JS 但我一开始就陷入困境 当我向场景添加灯光时 它没有任何效果 renderer new THREE WebGLRenderer camera new THREE PerspectiveCamera 45 Vie
  • 使用“cv::inRange”(OpenCV) 选择正确的 HSV 上下边界进行颜色检测

    I have an image of a coffee can with an orange lid position of which I want to find Here is it gcolor2 utility shows HSV
  • Shift-Tab 在 Emacs 中产生神秘错误

    我正在尝试学习org mode当我退出 emacs 时 注意到我的文件被整齐地折叠起来 按下时S TAB在尝试展开整个文件时 我在迷你缓冲区中收到以下错误消息 M z is undefined 谷歌搜索错误没有帮助 知道打嗝发生在哪里以及如
  • jstree 类型插件不显示自定义图标

    我有一个简单的 HTML 布局 如下所示 div ul li a href some category 1 a ul li a href some text a li ul ul li a href some text a li ul li
  • 在多个子图上反映事件处理

    我正在尝试创建一个包含 4 个子图的交互式图 理想情况下 单击其中一个子图将在其余子图中产生相同的结果 镜像单击 到目前为止 我只能单独单击它们并使用 mpldatacursor 获取特定数据 在此图中 单击事件将导致所有 4 个图表显示
  • 使用 Toolkit 时 Windows Phone 7 页面转换非常慢

    我遇到的问题是 每当我使用 Windows Phone 7 Toolkit 中的页面转换时 转换速度非常慢 并且整个应用程序似乎有框架掉落 动画 结结巴巴 还有其他人遇到过这种情况吗 我正在使用TransitionFrame类作为 Root
  • django 过滤器 icontains 仅匹配整个单词

    我正在使用过滤器 icontains 来搜索单词 但我只希望它匹配整个单词 例如如果我寻找肝脏 我不希望它返回 我的查询看起来像这样 MyModel objects filter title icontains search word 我见
  • 如何动态创建可在父作用域中访问的函数?

    这是一个例子 function ChildF Creating new function dynamically DynFEx function DynF Hello DynF Invoke Expression DynFEx Callin
  • 计算运输箱尺寸的粗略估计

    我正在尝试找到计算运输所需的箱子尺寸的最佳方法 我有 3 个不同尺寸的集装箱 我在数据库中定义了产品的宽度 长度 深度和质量 我想知道如何找到需要运输的最小箱子数量 以及考虑到购物车中的物品数量 这些箱子的最小尺寸 我当前的 想法 是找到整
  • 常数的哪一个性质使其不可改变?

    今天我面临一次面试 其中有一个问题对我来说非常棘手 面试官说 如何让常数能够改变它的值 我回答 使用指针 并向他展示了一个例子 int main void const int a 3 int ptr ptr int a printf A d