摘要: 在程序设计中,时时刻刻都用到变量的定义和变量的声明,可有些时候我们对这个概念不是很清楚,知道它是怎么用,但却不知是怎么一会事。下面我就简单的把他们的区别介绍如下:变量的声明有两种情况: (1)一种是需要建立存储空间的(定义、声明)。例如:int a在声明的时候就已经建立了存储空间。(2)另一种是不需... 阅读全文
posted @ 2014-09-29 17:45 stemon 阅读(1753) 评论(0) 推荐(0) 编辑
摘要: 先了解这里的相关知识:http://www.cnblogs.com/stemon/p/4000468.html头文件的中的#ifndef,这是一个很关键的东西。比如你有两个C文件,这两个C文件都include了同一个头文件。而编译时,这两个C文件要一同编译成一个可运行文件,于是问题来了,大量的声明冲... 阅读全文
posted @ 2014-09-29 16:50 stemon 阅读(1324) 评论(0) 推荐(1) 编辑
摘要: #ifndef、(或者#ifndef)、#def、#endif等宏这几个宏是为了进行条件编译。一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条件编译”。有时,希望当满足某条件时对一组语句进行编译,而当条件不满... 阅读全文
posted @ 2014-09-29 16:15 stemon 阅读(3083) 评论(0) 推荐(0) 编辑
摘要: 务必提前预读这里的内容:http://www.cnblogs.com/stemon/p/3999844.html回到cpp文件与头文件各写什么内容的话题上:理论上来说cpp文件与头文件里的内容,只要是C语言所支持的,无论写什么都可以的,比如你在头文件中写函数体实现,任何一个cpp文件包含此头文件就可... 阅读全文
posted @ 2014-09-29 14:59 stemon 阅读(3915) 评论(0) 推荐(0) 编辑
摘要: 简单的说,其实要理解cpp文件与头文件有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程:1.预处理阶段(也就是常说的切token)2.词法与语法分析阶段3.编译阶段,首先编译成纯汇编语句,再将之汇编成跟CPU相关的二进制码,生成各个目标文件 (.obj文件)4.连接阶段... 阅读全文
posted @ 2014-09-29 11:28 stemon 阅读(1238) 评论(0) 推荐(0) 编辑