C语言中define的使用方法
1、防止一个头文件被重复包含
当我们的程序很大很大时,比如超过20000行时,我们很可能没有办法对所有的文件都有清楚的了解,特别是.h的文件,那么我们怎么做才能避免include时重复包含呢答案就是#Clefine
如下:
a.hb.hc.h三个文件
a.h内容
intvariable_a;
b.h内容
#include〃a.h〃
intvariable,b;
c.h内容
#include〃a.h〃
#include"b.h"
intc;
那么c.h就包含了两次a.h,那如何避免呢
ftifndefA_H
#defineA_H
〃头文件A
#endif
这样就可以保证a.h只会被包含一次
2、简单替换
^defineMACROA15
后面出现的MACRO_A都会被替换为15这个数
3、带参数的.替换
#CIefineABS(a)(((a)>0)?(a):(-(a)))
可以使用宏替换来实现简单的函数。
以下是#CIefine的高级用法
4、高级用法
define中的三个特殊符号:#,##,#@
SdefineConn(x,y)x##y
#defineToChar(x)#@x
SciefineToString(x)#x
(l)x##y表示什么?表示X连接y,举例说:
intn=Conn(123,456);/*结果就是n=123456;*/
(±@1'*5”=(30即(”@5(1£”,"Η(1£");/*结果就是str="asdfadf";*/
(2)再来看#@x,其实就是给X加上单引号,结果返回是一个ConStChar0举例说:
chara=ToChar(I);结果就是a三c语言round函数怎么使用,Γ;
做个越界试验Chara=TOChar(123);结果就错了;
但是如果你的参数超过四个字符,编译器就给给你报错了!
errorC2015:toomanycharactersinconstant:P
(3)最后看看#乂,估计你也明白了,他是给X加双引号
char*str=ToString(123132);就成了Str="123132”;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论