#ifndef __USBREG_H#define __USBREG_H/* usb设备中断定义 usb_devintst usb_devinten usb_devintclr usb_devintdet*/#define FRAME_INT 0x00000001 //每隔1MS产生一次帧中断,该中...
分类:
其他好文 时间:
2015-03-15 02:00:19
阅读次数:
803
#define XXX do{ XXX } while(0) 为什么会有这种用法
时常会遇到一个很"奇怪的宏定义", rt.(欧西巴...思考不够深刻啊, 皮鞭, 啪啪啪)
最近又遇到这家伙了,Quora上面Love神回答了这个问题, 我也就顶礼膜拜
http://www.quora.com/What-is-the-purpose-of-using-do-while-0-in...
分类:
其他好文 时间:
2015-03-15 00:51:41
阅读次数:
159
LPC1788通用IO口的控制包含了一些基本的组件,比如设置推挽输出,开漏输出,上拉电阻等,我们今天来看看. 首先使用GPIO要打开GPIO的系统时钟 LPC_SC->PCONP |= (1>第五章(87页~92页).//IO口操作宏定义#define BITBAND(addr, bit...
分类:
其他好文 时间:
2015-03-14 00:58:37
阅读次数:
341
打造可高效维护代码的几个原则,一、唯一性原则,1、库函数:只在一个类中使用2、同样的功能只使用一个接口对外提供功能。3、只要是重复的东西尽量合并 相同特征抽象成基类, 相同方法抽象成虚基类或相同接口, 相同逻辑抽象成相同函数。二、一致性原则,1、不同模块中的语言与风格、信令结构、宏定义方式,2、分配和释放资源的结构一致:在同一代码结构层面上使用,同一个类中提供,同一个各cpp全局函数中提供。...
分类:
其他好文 时间:
2015-03-13 23:49:03
阅读次数:
244
预处理命令 ① 宏定义 ② 条件编译 ③ 文件包含宏定义: #define A 5 不带参数的宏 ① 所有的预处理命令都是以#开头; ② 预处理命令在程序翻译成0和1之前将程序中的A替换成5; ③ 预处理的作用域是在预处理命令开始的那一行开始,到程序的结尾; ④ 宏名一般用大写或者以看k开头,变量名...
分类:
其他好文 时间:
2015-03-13 22:03:59
阅读次数:
113
一、首先建立两个一维数组,建立一个for循环,用随机数对数组赋值,只需要满足第一个数不重复即可,如果不重复就输出;二、宏定义数组的个数N,控制输出的数量,在输出的过程中,可以控制每行输出的个数三、对运算符的控制,控制随机数的范围就控制数值的范围以及数的类型,是否有乘除法则可以通过控制四则运算来满足条...
分类:
其他好文 时间:
2015-03-13 14:20:09
阅读次数:
127
四则运算2设计思想;(1)首先使用Switch语句,让用户选择要进行运算的数字的范围,然后各个case语句里调用相应的产生数字的随机函数random();(2)至于要进行的题目数使用宏定义,让用户自己输入要进的计算的题目个数;(3)开始定义的产生的随机数均定义整型;若用户没有特定的需求则默认在各个....
分类:
其他好文 时间:
2015-03-13 14:04:00
阅读次数:
88
四则运算2设计思路1题目避免重复:建立两个数组,rand()函数确定随机数,将这两个数加入两个数组,重复确定随机数,判断这两个数是否与两个数组的数值相同以避免重复,无重复则输出题目。2可定制(数量/打印方式):数量和打印方式用宏定义确定输出几行与几列。3是否有乘除法:定义一个四则运算符的数组,前两个...
分类:
其他好文 时间:
2015-03-13 14:01:13
阅读次数:
113
# 设置编译器CC = g++# -fPIC 作用于编译阶段,告诉编译器产生与位置无关代码# -D宏定义,相当于C中的全局#define,可以通过宏定义来控制源程序的编译,例如:# #ifdef _FILELINE# printf("Hello Yu Qiang, How are you?\n");...
分类:
其他好文 时间:
2015-03-13 10:46:46
阅读次数:
127
在C及C++语言中允许用一个标识符来表示一个字符串,称为宏,该字符串可以是常数、表达式、格式串等。在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换,这称为“宏代换”或“宏展开”。宏定义是由源程序中的宏定义命令完成的。宏代换是由预处理程序自动完成的。若字符串是表达式,我们称之为函...
分类:
编程语言 时间:
2015-03-12 18:58:16
阅读次数:
224