C语言预编译怎么使用
发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,这篇文章主要介绍"C语言预编译怎么使用"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"C语言预编译怎么使用"文章能帮助大家解决问题。1、内置符号这些符号都可以直
千家信息网最后更新 2024年11月24日C语言预编译怎么使用
这篇文章主要介绍"C语言预编译怎么使用"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"C语言预编译怎么使用"文章能帮助大家解决问题。
1、内置符号
这些符号都可以直接使用:
__FILE__ 点c文件全名
__LINE__ 当前行号
__DATE__ 编译日期
__TIME__ 编译时间
举例:
#includeint main() { printf("文件全名:%s\n", __FILE__); printf("当前运行行号:%d\n", __LINE__); printf("编译日期:%s\n", __DATE__); printf("编译时间:%s\n", __TIME__); return 0;}
效果:
2、自定义符号
#define 名 值
不带分号。预编译阶段,所有名字会被值替换。
举例:给printf取个别名。
#include#define say printfint main() { say("你好,世界!\n"); return 0;}
效果:
举例:自定义一个死循环符号。
#include#define loop while(1)int main() { int i = 0; loop{ if (i > 1000) { break; } else { printf("你好,世界!\t%d\n",i); i++; } } return 0;}
效果:
3、自定义宏
和自定义符合差不多。
相当于函数,只不过在预编译的阶段就会执行。
然后替换掉。
#define 名 ( 参数列表 ) 表达式
举例:输出字符串。
#include#define say(s)printf(s)int main() { say("你好,世界!\n"); return 0;}
效果:
替换逻辑:递归。
看参数有没有define,有就套娃。
直到没有,替换自己。
字符串内部的符号会被忽略。
4、条件编译
可以用#define定义一个符号,代表是否要执行。
#include#define __DEBUG__ 1int main() { if (__DEBUG__) { printf("调试模式开启\n"); } else { printf("调试模式关闭\n"); } return 0;}
效果:
同时,可以让这段代码直接跳过编译。
#include#define __DEBUG__ 1int main() {#if __DEBUG__ printf("调试模式开启\n");#endif return 0;}
这种写法也有配套的选择分支。
#include#define __DEBUG__ 0#define __WARN__ 1int main() {#if __DEBUG__ printf("调试模式\n");#elif __WARN__ printf("警告模式\n");#else printf("正常模式\n");#endif return 0;}
效果:
关于"C语言预编译怎么使用"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
编译
效果
模式
符号
语言
世界
你好
知识
全名
参数
字符
字符串
文件
日期
时间
行业
阶段
行号
不同
实用
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
医疗软件开发 什么语言
gmod服务器未响应
网络安全监测 研判
建立客户数据库的作业
桂阳安卓软件开发培训学校
江苏hpe塔式服务器哪家好
mcpe服务器卡
千万级数据库 服务器资源
电脑怎么管理我服务器
开黑啦怎么看服务器吗
怎么给软件开发者权限
软件开发项目账务处理
当代网络安全措施
永康市飞牛网络技术有限公司电话
点云网络技术有限公司
开发中的数据库建模由谁做
光资源常用的数据库名称
软件开发行业成本控制
上海跨品种套利软件开发
网络安全绘画品
网络技术部策划专员
lol澳洲服务器
cf服务器断开连接
第三次全国 数据库 招标
网络安全信息化建设特色和亮点
服务器是哪一层的设备
数据库中的seriesid
徐州浪潮服务器安装
修改数据库远程连接端口
达梦数据库替换mysql