typedef 类型再定义
基本句法 typedef OriginalType NewType
作用
1 定义原来类型别名 使得代码阅读性提高 例如 typedef unsigedint sizt_t
2程序移植性更好。加入16机器上int 占用 2个字节 32位上int 4个字节 typedef int /long Integer
typedef 特殊语法
1 结构体
typedef struct stName
{
Attributes;
} AnotherName;
AnotherName st1;
struct stName
{
Attributes;
};
stName st1;
2定义数组
typedef int Array[10];
Aarray a,b,c = int a[10],int b[10]
3定义函数指针
typedef void (*fpAdd)(int,int)
定义 void Add(int num1,int num2);
#define 宏定义
宏定义 标识符表示字符串(常数 表达式)
1 无参数的宏
#define symbol xxxxx #difine PI 3.14 #define EXP (x*x + y*y)
2 有参数的宏
#define EXP(x) (x*x + 2)
#define MAX(x,y) (x>y ? x:y)
3 宏定义中特殊字符 # ## \
#表示置换成字符串
#define ID #12345
#define p(exp) printf(#exp);
##表示字符串连接
#define CAT(x,y) x##y
3. #@:将值序列变为一个字符
#define ch(c) #@c
调用ch(a)展开后成为'a'.
\表示换行没有空格