摘要: 一、对于基本声明 1.const int r=100; //标准const变量声明加初始化,因为默认内部连接所以必须被初始化,其作用域为此文件,编译器经过类型检查后直接用100在编译时替换。2.extend const int r=100; //将const改为外部连接,作用于扩大至全局,编译时会分配内存,并且可以不进行初始化,仅仅作为声明,编译器认为在程序其他地方进行了定义。3.const int r[ ]={1,2,3,4}; struct S {int a,b;}; const S s[ ]={(1,2),(3.4)}; //以上两种都是常量集合,编译器会为其分配内存,所以不能在编译期间 阅读全文
posted @ 2013-09-26 14:12 来自你520的末班车 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 1、define——(无参数宏定义)用法一般形式为:#define标识符 字符串(1)“#”表示其为预处理命令,凡是以“#”开头的都是预处理命令;“define”为宏定义命令;“标识符”为所定义的宏名;“字符串”可以是常数、表达式、字符串等。(2)除了经常用到的如“#define MAXNUM 100”之外,还有其它多种灵活的用法,如“#define M (y*y+3*y)”,注意,的表达式中()是必须的,否则在进行如“2*M+2”的运算时就会出现错误。(3)末尾不需要分号(如果加分号,会连同分号一起代换)。(4)define只是做简单的文本替换。(5)作用域为宏定义开始,到源程序结束,终止定 阅读全文
posted @ 2013-09-26 10:56 来自你520的末班车 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 记得去年上算法分析课的时候讲过怎么快速的修改数组,比如,把数组中偶数放在前面,奇数放在后面;把数组中能被三除尽的数放在前面,不能的则放在后面。。。 如果,我没看到那道题我的思路肯定是一个一个的写函数呗,不就是快速排序的思想吗,不过,当我看到了那道题的解法后,发现,真的应该好好想想函数的通用性。 下面,我直接贴出代码:123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354#include int quick_insert_(int *data, in.. 阅读全文
posted @ 2013-09-26 10:51 来自你520的末班车 阅读(529) 评论(0) 推荐(0) 编辑