- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是计算和计算机领域的新手..我正在使用C编程进行开发,每次我陷入思考时,如果我们用新值修改它,PC如何真正删除旧值,我的意思是:假设我在 C 上这样写
int i=6;
i=7;
那么 i 的值为 7,我知道为什么,因为我们已经将旧值修改了 7,但是 PC 究竟如何删除之前的值呢?我可以相信“以前的值被覆盖,它将被删除”,但我很好奇如何通过分配修改后的值来删除它?
这就像魔法吗?对我来说仍然很奇怪..如果有一个好的解释,我将非常感激,以说服我一旦我们修改同一内存的地址,PC如何使用覆盖模式操作来删除以前的值..
最佳答案
计算机的存储空间是有限的。他们会覆盖该存储。它不像 SSA 模型,每次赋值都会创建一个新变量。计算机确实改变了现有存储位置的值(value)。
C 语言的定义是每个变量都有自己的内存位置。分配新值不会更改地址。它不是对新的不可变值的引用,它实际上是在改变 int i
的存储。 写入新值会隐式破坏变量以前的内容。它不会去任何地方。
您可以查看使用指针的示例,看看在 int *p = &i;
之后,从 *p
获取的值在执行 后发生了变化i=7;
或者通过 google 搜索有关 C 指针的教程以获取更多详细信息。
这不是“魔法”,只是存储单元在电学上的自然工作方式。例如单个flip-flop可以通过应用输入信号和告诉它忘记其旧值的重置信号来从一种状态更改为另一种状态。
<小时/>物理类比是一张纸、铅笔和橡皮,而不是一大叠新索引卡。 “消耗品”(铅笔芯和橡皮擦)只是电力。 (或者更具体地说,CMOS 逻辑中的电荷。其他一些类型的数字逻辑需要电流连续流动,从而消耗大量功率。)
<小时/>CPU 寄存器通常由 SRAM(静态 RAM)组成,请参阅 https://en.wikipedia.org/wiki/Static_random-access_memory#Writing 。例如,一个单元通常由 6 个晶体管组成,类似于触发器,但更高级,除非设置新值,否则没有电流流动。它存储 1 位,并且可以通过应用写使能信号将 SRAM 单元更新为其输入行中的值来多次写入新值。
实际的主内存通常由DRAM组成。 ,其中位作为电荷存储在电容器上。每次读完都得刷新这个费用,不过还是一个固定位置可以写入新值的概念。
关于c - 修改同一内存地址上的值如何会删除以前的值? "OVERWRITTEN concept on PC' s模式操作”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58476157/
当我推送覆盖现有图像(名称和标签相同)的新图像时,先前的图像只是从其标签中删除,并保留在存储库中。 有没有一种方法可以配置gcr或我的docker命令,使其不保留过期的镜像?我可以查询没有标签的图像并
假设我有atomic i;线程 A 使用 memory_order_release 执行原子存储/交换。接下来,线程 B 使用 memory_order_release 执行原子存储。线程 C 执行原
从基于团队的 Git 远程存储库中 pull 时,我收到此消息: "C:\Program Files (x86)\Git\bin\git.exe" pull --progress "origin" +
问题:由于此错误,我无法在本地启动区块链-突然 pop 。恐怕由于项目原因,我将无法共享很多代码。 背景:昨天早晨出现错误时,没有特别的更改。当我开始工作时,我只是尝试启动本地区块链,这使此错误出现:
当一个类扩展另一个类时,它继承父类(super class)的所有方法和变量。如果您在具有相同签名的子类中以不同方式定义方法和变量,则它们可以在子类中以不同方式使用。现在 Oracle 区分覆盖和隐藏
这是我的 Python 脚本与 XLSXwriter 遵循的基本流程: 创建工作簿 创建工作表 定义格式 在第 1 行中写入列标题(利用第 3 步中的格式设置) 在后续行中写入实际数据(无特殊格式)
我正在写入 hadoop 文件系统。但是每次我追加一些东西时,它都会覆盖数据而不是将其添加到现有数据/文件中。下面提供了执行此操作的代码。针对不同的数据一次又一次地调用此代码。每次打开一个新的 Seq
我有一个名为ggstatsplot(https://indrajeetpatil.github.io/ggstatsplot/)的R包,它依赖于彼此共享一些S3方法的包的集合。因此,每次加载程序包时,
我被这个问题难住了,也许你可以帮助我。 这是我的 html: All products cat 1 cat 2 这是我的 js: jQuery(".wpsc_product_list_categ
项目: 获取维基百科的罗马执政官列表,将数据放入 CSV 文件中,这样我就可以制作一张关于领事权方面各氏族兴衰的图表 示例数据源: 509,L. Iunius Brutus,L. Tarquinius
我是计算和计算机领域的新手..我正在使用C编程进行开发,每次我陷入思考时,如果我们用新值修改它,PC如何真正删除旧值,我的意思是:假设我在 C 上这样写 int i=6; i=7; 那么 i 的值为
假设我有如下模块: app-core app-db app-ui app app 模块包括所有其他 3 个模块。比方说,除了 app 之外的所有模块都定义了一个名为 app_name 的字符串。哪一个
我正在尝试使用一个小的 from,只有 3 个元素。这是我正在使用的,有人可以让我知道我哪里出错了吗?我已尝试同时使用最小宽度和最大宽度,但似乎没有任何效果。 html,body{margin:0p
所以,我的带有颜色 !important 的 id 选择器被一个没有 !important 的简单 .class h1 选择器覆盖。我很困惑,无法找到这方面的任何信息。 我知道 css 的特殊性,无论
我刚刚安装了 CKEditor 3.0。一切正常,除了编辑器的风格。因为在这个最新版本中,WYSIWYG 按钮放在网站上(而不是在框架中),所以我的样式表覆盖了 CKEditor 按钮。我的样式表
背景 我只使用一个分支 - master。 3---------2--------- | 6-------5---------4
升级Flutter SDK和包 My-Mac:~ admin$ flutter upgrade Upgrading Flutter from /Users/admin/Desktop/
我在 youtube 上关注了 React JS Crash Course - 2019,但无法找到以下问题的答案。 为什么子组件的绑定(bind)调用不会覆盖父组件中的方法上下文。 可以在此处找到代
在我的应用中,提交按钮和链接看起来完全一样。 我构建我的 css 的方式是这样的: .button, input[type=submit]{ //default colour back
一些说明: 我想在游戏中有 6 个占位符 div 用于罢工。 就像[ ] [ ] [ ] [ ] [ ] [ ]。 这将是带有黑色边框的白色方 block 。 在他们猜错之后,我希望第一个 div 被
我是一名优秀的程序员,十分优秀!