易截截图软件、单文件、免安装、纯绿色、仅160KB

C/C++变量分析


BSS
未初始化的数据
DATA
初始化的数据
TEXT(code)
代码
 
      在C中有全局、局部(自动变量)和静态变量。
全局变量在C语言里表示时,在函数之外的就是全局变量,即在函数外所申明的变量;而静态变量可以放在函数外,也可以放在函数内。全局变量有两个作用:第一,当在函数外申明时,所有文件的函数都可以访问它,都可以直接引用全局变量的访问;第二,可以允许另外的文件访问,但是在那个要访问的文件中用extern做标记。而静态变量如果放在函数的外面,则在整个文件中也是可以访问的,但是,另外的文件是不可以访问的。如果静态变量放在函数内,那么就只能是这个函数能访问,但它还是放在DATA区域中的。
      局部变量都是在堆栈中的,而静态和全局都是在数据区中。堆栈和全局区在执行的时候如图所示;
堆区
栈区
堆区
BSS
DATA
CODE
如果类是一个巨大的类,需要占据很大的数据空间,就应该把它当做指针用new来分配空间。
局部变量(自动变量),自动的意思就是自动地分配和清除,并且出示的值也是随机的。所以,如果程序中没有对自动变量进行复制就使用,那么可能会出现意想不到的问题。
 


相关文档:

C程序:某水王的发帖数超过总贴数的一半,找出之

//某水王的发帖数超过总贴数的一半,找出之
int find(int *ID, int N)
{
int candidate;
int nTimes, i;
for (i = nTimes = 0; i < N; i++)
{
if (nTimes == 0)
{
candidate = ID[i];
nTimes = 1;
}
else if (candidate == ID[i])
{
nTimes++;
}
else
{
nTimes--;
......

C程序:判断链表是否有环

/*
这是个常见的面试题哦,总之我面试的时候遇到过, 当时没有答上来
回去后想出来下面的方法一,该法还有个附加优点,可以判断出链表在哪个地方形成环的(即如果想拆开这个环,从哪个地方断开)。
后来知道还有个经典算法,即使用两个指针,一快一慢向前试探,如果最终重合则链表有环,果然优美的算法。
*/
#inc ......

规范化的C++编程方法备忘录 C/C++算数运算:

    已经知道的,不说了...大家都知道的,可以问问,查查资料。这里又放些附加建议:
1.基本算数运算:
  既然计算机里没有真正的整数,那么计算机里也没有真正的算数运算。
    取值范围:
  设a和b是两个占一样位宽的无符号整数,这种整数可取到最大值M ......

S3C2410 Nand Flash控制器

    访问Nand Flash时需要先发出命令,然后发出地址序列,最后读/写数据;
    需要使用各个信号来分辨命令、地址、数据;
    S3C2410 的Nand  Flash控制器 提供了相关寄存器来简化这些操作:
           & ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号