C语言中宏定义使用的小细节

时间:2022-06-06 08:01:51

#pragma#pragma 预处理指令详解
在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和 C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。
其格式一般为: #Pragma Para
.............etc..

baike.baidu.com/view/1451188.htm

=======================

强制使用函数而不是宏定义的两种方法:

1: #undef isalpha

出现在isalpha()之前,并且在文件顶部依然包含了<ctype.h>.可以强制编译器使用函数定义.

2:(isalpha)(c)

预处理器不会把这个结构当做宏,而是当做函数调用