摘要:本文主要介绍了C语言/C++入门之C语言预处理和宏定义,通过具体的内容向大家展现,希望对大家对C语言/C++开发的学习有所帮助。
本文主要介绍了C语言/C++入门之C语言预处理和宏定义,通过具体的内容向大家展现,希望对大家对C语言/C++开发的学习有所帮助。
C语言预处理
在C语言中,预处理指令是在实际源代码编译之前执行的步骤。它不是编译的一部分。C语言中的预处理程序指令用于定义和替换文本中的标记,还用于将其他文件的内容插入源文件。
当我们尝试编译程序时,先执行预处理程序命令,然后再编译程序。
每个预处理器命令均以#符号开头。
预处理不是语句,故预处理命令不需要(;)结束
C语言宏定义
#define
用于在C编程语言中创建符号常量(称为宏)。此预处理器命令也可以与参数化宏一起使用。
宏替换
宏函数
案例程序如下:
带语句的宏以及多行宏的编写
C语言销毁宏定义
#undef
用于销毁已经使用#define创建的宏。如下测试代码:
C语言宏判断
#ifdef
如果已定义宏,则#ifdef返回TRUE;如果未定义宏,则返回FALSE。
#ifndef
如果未定义指定的宏,则#ifndef返回TRUE,否则返回FALSE。
#endif
和#ifdef与#endif成对使用
如下测试代码:
条件编译
#if
#if使用指定宏的值进行条件编译。
#else
#else是#if的替代方法。
#elif
#elif是#else,在一条语句中后接#if。
#endif
#endif用于终止预处理器条件宏。
测试案例如下:
注意点:
预处理是在编译期完成的,所以在处理变量的时候一定要注意,如下测试代码:
其他
#include
#include用于将特定的头文件插入C程序。
#error
#error用于在stderr上打印错误消息。
#pragma
#pragma用于向编译器发出特殊命令。
如:包含静态库资源,内存对齐方式。
C语言有预定义的宏
它们如下所示...
__ DATE __:当前日期,
__ TIME __:当前时间
__ FILE __:这包含当前文件名。
__ LINE __:包含当前行号。
__ STDC __:编译器是ANSI,值为1。
如下测试代码:
尾言
作业:使用宏,实现宏链表。
哪里有什么老天的眷顾,所谓的幸运和成功都源自你自身的努力和付出。请记住,你现在多走的每一步都在拉开着你和别人的差距。要做,就做生活的强者。
我是小职,记得找我
✅ 解锁高薪工作
✅ 免费获取最新技术干货教程资源
您输入的评论内容中包含违禁敏感词
我知道了
请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号