[C]C语言基础巩固专题 const
const 是在程序中非常重要。在这里我做一下简单的介绍。
1.const 基础
const有两种形式:
a) const Type var;
如:int a =10;const int * var=&a; 那么var就是常量指针,表明是指向常量的指针,也就是说a的值不能改变。
b) Type const var;
如 int * const var; var 叫做指针常量,指针是常量,表明var内存放的地址不能变。
下面介绍const 的作用
2. 定义常量。
const int p=10;
p在程序中就不能修改了。
与#define 定义常量相比,它有以下不同:
a) define 在预处理阶段展开;const 是编译运行时使用
b) definde 无类型,不进行类型检查;const 有数据类型,做类型检查,安全性高。
c) define 仅仅是展开,不分配内存;const 常量有分配,一般分配在常量区。
3.修饰函数的参数,返回值。
修饰值:
void function(const int a):a 的值不变,对于该函数好像意义不大,所以这种方式很少用。
修饰指针:
void function(const char * p):表明不能修改参数的值,
int strcpy(char * dst,const char * src);就是一个很明显的例子,要就在复制的时候不改变原来src的值。
修饰引用:
void function(const Class & a);通过引用,可以省掉临时对象的生成,复制,析构的消耗,耗时,耗空间。
以上只是我的简单的总结,有不对的地方,请指正,谢谢!
相关文档:
今天归纳总结一下文件操作函数及各个参数的含义:
先介绍一下c++的文件操作,为什么说c++的文件操作呢,因为对于c语言的操作,也有它的函数之不过大同小异罢了。
在c++的文件操作中有,有一个类对文件操作进行操作,即CFile,下面就写一段代码,来简单的进行介绍。
CFile cf;
char zhi[]={1,2};
&n ......
转载自: http://bbs.chinaitlab.com/thread-304041-1-1.html
学习C语言不是一朝一夕的事情,但也不需要花费十年时间才能精通。如何以最小的代价学习并精通C语言是本文的主题。请注意,即使是“最小的代价”,也绝不是什么捷径,而是以最短的时间取得最多的收获,同时也意味着你需要经历艰苦的过程。
一、要读 ......
通过前面两篇,相信大家已经基本了解了我们的研究思路。既然是研究,那么必须的研究工具就得熟练掌握了。这里我所指的研究工具就是VC,我所使用的VC版本是2005。本文也将根据VC2005进行探讨。可能很多朋友或者初学者还是使用的VC6.0。在这里本人不推荐使用VC6.0。原因很简单,VC6.0已经过时了,后面的版本比VC6.0更强大方便 ......
"endian"这个词出自<<格列佛游记>>,小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开.我们一般将endian翻译成"字节序",将big endian和little endian称作"大端"和"小端".
在计算机科学领域中,字节序是指存放多字节数据的字节的顺序,典型的情况是整数在内存中的存放方式和 ......
函数存放在内存的代码区域内,它们同样有地址,我们如何能获得函数的地址呢?
如果我们有一个int test(int a)的函数,那么,它的地址就是函数的名字,这一点如同数组一样,数组的名字就是数组的起始地址。
定义一个指向函数的指针用如下的形式,以上面的test()为例:
int (*fp)(int a);//这里就定义了一个指 ......