频道栏目
首页 > 资讯 > C语言 > 正文

c语言关于宏定义的代码实例讲解

18-07-19        来源:[db:作者]  
收藏   我要投稿

c语言关于宏定义的代码实例讲解

#include 
#include 
//C语言执行的流程
//编译:形成目标代码(.obj)
//连接:将目标代码与C函数库连接合并,形成最终的可执行文件
//执行

//预编译(预处理),为编译做准备工作,完成代码文本的替换工作
//C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include
//C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\crt\src

//头文件告诉编译器有这样一个函数,连接器负责找到这个函数的实现
//宏定义、宏替换、预编译指令
//define指令

//1.定义标示
//#ifdef __cplusplus 标识支持C++语法
//防止文件重复引入

//在A.h 告诉编译器有printfA()函数
/*#include "A.h"
//在c中实现
void printfA(){
 printf("%s","a string");
}
//调用
void main(){
 printfA();

 getchar();
}*/


A.h: 
//如果没有定义AH 则定义AH
/* #ifndef AH  //这条语句和#endif是配对的
#define AH

#include "B.h"

void printfA();

#endif*/

//该头文件只被包含一次,让编译器自定处理好循环包含问题
#pragma one
#include "B.h"
void printfA();
//2.定义常数(便于修改与阅读)
/*#define MAX 100
//int MIN = 40;
void main(){
 if (3<max) {="" printf("数字比%d小",="" max);="" }="" getchar();="" *="" 3.定义“宏函数”="" *void="" com_gxl_read(){="" printf("read="" method\n");="" void="" com_gxl_write(){="" printf("write="" jni函数名称很长,也是jow宏函数缩短函数名称="" #define="" jni(name)="" com_gxl_##name();="" main(){="" 调用了com_gxl_write方法="" jni(write);="" }*="" 
//日志输出 //__VA_ARGS__可变参数 //#define LOG(FORMAT,...) printf(##FORMAT,__VA_ARGS__); ////日志会有级别 //#define LOG_I(FORMAT,...) printf("INFO:"); printf(##FORMAT,__VA_ARGS__); //#define LOG_E(FORMAT,...) printf("ERRO:"); printf(##FORMAT,__VA_ARGS__); //升级版本 #define LOG(LEVEL,FORMAT,...) printf(##LEVEL); printf(##FORMAT,__VA_ARGS__); #define LOG_I(FORMAT,...) LOG("INFO:",##FORMAT,__VA_ARGS__); #define LOG_E(FORMAT,...) LOG("ERROR:",##FORMAT,__VA_ARGS__); #define LOG_W(FORMAT,...) LOG("WARN:",##FORMAT,__VA_ARGS__); //Android //#define LOGI(FORMAT,...) __android_log_print(ANDROID_LOG_INFO,"jason",FORMAT,##__VA_ARGS__); //LOGI("%s","fix"); //替换 //__android_log_print(ANDROID_LOG_INFO, "jason", "%s", "fix"); void main(){ LOG_I("%s","hello"); getchar(); }
相关TAG标签
上一篇:C++类型转换代码实例
下一篇:KMP模式匹配算法
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站