c语言 预处理
2015-11-08 17:52
232 查看
extern 引用外部全局变量
#define SIZE 20
int a[SIZE]; //经常这么用
宏替换
#define Print(My_var) printf(" %d",My_var)
#define max(x,y) x>y?x:y
如果一行放不下可以加 \ 换行继续
字符串作为宏参数
#define STR "cxc"
用宏连接字符串
#define join(a,b) a##b
printf("%d\n", strlen(join("cxc","as")));//输出5
#ifndef block 等价于 #if !define block
#ifdef block 等价于 #if defined block
条件宏举例:
#include<stdio.h>
#include<string.h>
#define A 0
#define B 1
#define C A
#if A == B
#define STR "相等"
#else
#define STR "不相等"
#endif
int main(void)
{
printf("%s\n",STR );
return 0;
}
日期宏
#include<stdio.h>
#include<string.h>
int main(void)
{
char date[] = __DATE__;
printf("%s %s\n",date,__TIME__ );
return 0;
}
#define SIZE 20
int a[SIZE]; //经常这么用
宏替换
#define Print(My_var) printf(" %d",My_var)
#define max(x,y) x>y?x:y
如果一行放不下可以加 \ 换行继续
字符串作为宏参数
#define STR "cxc"
用宏连接字符串
#define join(a,b) a##b
printf("%d\n", strlen(join("cxc","as")));//输出5
#ifndef block 等价于 #if !define block
#ifdef block 等价于 #if defined block
条件宏举例:
#include<stdio.h>
#include<string.h>
#define A 0
#define B 1
#define C A
#if A == B
#define STR "相等"
#else
#define STR "不相等"
#endif
int main(void)
{
printf("%s\n",STR );
return 0;
}
日期宏
#include<stdio.h>
#include<string.h>
int main(void)
{
char date[] = __DATE__;
printf("%s %s\n",date,__TIME__ );
return 0;
}
相关文章推荐
- 批处理中的预处理实现代码
- Lua和C语言的交互详解
- 关于C语言中参数的传值问题
- 简要对比C语言中三个用于退出进程的函数
- 深入C++中API的问题详解
- 基于C语言string函数的详解
- C语言中fchdir()函数和rewinddir()函数的使用详解
- C语言内存对齐实例详解
- 使用C语言判断英文字符大小写的方法
- c语言实现的带通配符匹配算法
- C语言实现顺序表基本操作汇总
- C语言中计算正弦的相关函数总结
- 使用C语言详解霍夫曼树数据结构
- 探讨C语言的那些小秘密之断言
- C语言实现BMP转换JPG的方法
- 深入探讨C语言中局部变量与全局变量在内存中的存放位置
- C语言查找数组里数字重复次数的方法
- C语言泛型编程实例教程
- C语言中使用lex统计文本文件字符数
- 在C语言中转换时间的基本方法介绍