预处理#和##是两个预处理运算符(注意不是C语言表达式的运算符),#后接形参(中间可以空格),用于创建字符串字面值;##用于连接两个形参。函数式宏定义也可以带可变参数,同样是用…表示可变参数,宏定义中的可变参数的部分用_VA_ARGS_表示。如:#define showlist(…) printf(...
分类:
系统相关 时间:
2015-03-12 18:54:08
阅读次数:
196
今天想写个宏定义,发现宏定义里也可以写不定参数,但是我的宏最终没有用。
因为我觉得写完,这个不定参数给我带来的麻烦,比好处好想多。
因此我就定义了两个宏,用一个宏定义另一个。
把今天这个c++的类型不确定和参数个数不确定的用法先记下来。以备后用啊。
直接代码:
#include // 必备头文件
#include
using namespace std;
typed...
分类:
编程语言 时间:
2015-03-11 21:46:11
阅读次数:
148
CGfloat和float的区别?现在上架的app都要求支持64位系统,那么CGFloat和float的区别就在这里.command+左键点击CGFloat.1typedefCGFLOAT_TYPECGFloat;这里可以看到CGFloat是CGFLOAT_TYPE的宏定义,那么这个又是什么?123...
分类:
移动开发 时间:
2015-03-11 17:07:41
阅读次数:
156
转自廖雪峰在iOS开发中,如果使用UINavigationController,配合Storyboard+Push模式的Segue,默认情况下,可以直接实现左右推出的View切换效果。但是,如果不使用UINavigationController时,把Segue设置为Push,运行就会直接报错,而Model模式的Segue只有Cover Vertical,Flip Horizontal,Cross D...
分类:
移动开发 时间:
2015-03-11 10:57:03
阅读次数:
156
1. 宏定义 #define ASPECT_RATIO 1.653
该宏定义ASPECT_RATIO也许从来没有被编译器看到,也许在编译器开始处理源码之前就已经被预处理器替换了。所以记号名称ASPECT_RATIO有可能没进入符号表(symbol table)中。所以,当你从这个常量得到一个编译错误...
分类:
编程语言 时间:
2015-03-09 22:14:12
阅读次数:
224
1、typedef和#define一般用typedef比较好,可以用于定义指针。如果是#define的话,如:#define ap char *, 后面用ap定义时,定义的仍然只是字符,不是指针。#define也有好处,比如可以用#ifdef:如果宏定义了,则。2、
分类:
编程语言 时间:
2015-03-08 21:26:01
阅读次数:
167
#include #define exchange(a,b){\int t;\t=a;\a=b;\b=t;\}int main(int arge,char *argv){int a=2,b=3;printf("交换前a=%d,b=%d",a,b);exchange(a,b);printf("交换后a...
分类:
其他好文 时间:
2015-03-08 21:23:07
阅读次数:
133
最近闲着顺便看了看6410的uboot代码,因为友善的boot对nand部分代码做了隐藏,所以干脆找了光盘里面三星原厂的uboot代码来看,因为友善的boot代码肯定也是基于厂商的代码改的,肯定可以的。 安全起见,直接编译了三星的uboot代码,放到友善的板子上跑了一下,结果果然可以跑,但是发...
分类:
其他好文 时间:
2015-03-07 19:58:21
阅读次数:
120
机器码宏定义 gedit arch/arm/tools/mach-types引用 board/Samsung/TX2440/ TX2440.c内核定义gedit arch/arm/tools/mach-types
分类:
其他好文 时间:
2015-03-06 20:42:37
阅读次数:
107
/****yy_room*2015-3-6***/#include #include using namespace std;/** # 表示将一个宏的参数转换为字符串字面量* ## 将两边记号连接在一起**/#define MACRO_GET_SET(T,VarName,FuncName) pro...
分类:
其他好文 时间:
2015-03-06 16:33:46
阅读次数:
160