
转载区
lizhongwen1987
学习,分享,长期主义
展开
-
static全局变量,局部变量,函数与普通全局变量,局部变量和函数的区别
全局变量(外部变量)的说明之前冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式。这两者在存储方式上并无不同。这两者的区别在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。而静态全局变量则限制了其作用域, 即只在定义该变量的源文件内有效,在同一源程序的其它源文件中不能使用它。由转载 2010-03-20 21:41:00 · 1178 阅读 · 0 评论 -
const char*, char const*, char*const的区别(转)
const char*, char const*, char*const的区别问题几乎是C++面试中每次都会有的题目。 这个知识易混点之前是看过了,今天做Linux上写GTK程序时又出现个Warning,发散一下又想到这个问题,于是翻起来重嚼一下。事实上这个概念谁都有只是三种声明方式非常相似:Bjarne在他的The C++ Programming Language里面给出过一个助记的方法转载 2009-10-30 15:58:00 · 674 阅读 · 0 评论 -
Memset、Memcpy、Strcpy 的作用和区别(转)
(1) Memset 原型: extern void *memset(void *buffer, int c, int count); 用法: #include 功能: 把buffer所指内存区域的前count个字节设置成字符 c。 说明: 返回指向buffer的指针。用来对一段转载 2009-10-30 08:17:00 · 1559 阅读 · 1 评论 -
堆、栈、自由存储区、全局/静态存储区和常量存储区(转)
在C++中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/静态存储区和常量存储区。 1.栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。 2.堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉,那么在程序结束后,操作系统转载 2009-10-30 08:03:00 · 465 阅读 · 0 评论