码迷,mamicode.com
首页 > 编程语言 > 详细

C++中,int a = 10的后面的操作

时间:2017-12-06 21:56:18      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:操作   一个   地址   级别   编译器   成员变量   类成员变量   ack   指针   

在C++中,int a = 10的内存表现形式取决于你的具体代码和优化级别,主要的几种形式:
  1. 不存在于内存中。比如a从未改变,被编译器当成常量,所有代码中的a直接替换成10;
  2. 存在于寄存器中;比如对a的读写很简单,10可能就直接放在了寄存器eax中。
  3. 放在函数栈(stack)中。比如包含a的函数的栈基指针是0xC0000000,a的地址就可能是0xBFFFFFFC
  4. 也可能在堆(heap)中,比如a是一个类成员变量,而该类的对象new在堆上。




C++中,int a = 10的后面的操作

标签:操作   一个   地址   级别   编译器   成员变量   类成员变量   ack   指针   

原文地址:http://www.cnblogs.com/qiaoyanlin/p/7994519.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!