lianglong 发表于 2011-7-11 20:36:42

关于头文件的一个小问题,谢谢指教

#ifndef EVMDM642_VDISPARAMS_H
#define EVMDM642_VDISPARAMS_H
extern VPORTDIS_Params EVMDM642_vDisParamsChan;
extern VPORT_PortParams EVMDM642_vDisParamsPort;
extern SAA7105_ConfParams EVMDM642_vDisParamsSAA7105;
#endif

其中的 #ifndef EVMDM642_VDISPARAMS_H#define EVMDM642_VDISPARAMS_H是什么意思啊? 再次感谢

wowbanui 发表于 2011-7-11 21:38:25

#ifndef 如果没有定义...
#define 则定义...

...

#endif 结束如果

AIHHLI 发表于 2011-7-11 21:42:42

可以认为一个标志。

lianglong 发表于 2011-7-11 21:48:32

回复【1楼】wowbanui
#ifndef 如果没有定义...
#define 则定义...
...
#endif 结束如果
-----------------------------------------------------------------------

谢谢 其实想问的是问什么,如果没定义EVMDM642_VDISPARAMS_H 的话则定义它?定义这个有什么用呢也没看到用啊

anvy178 发表于 2011-7-11 21:49:46

这样做可以避免重复定义。

chenchuan 发表于 2011-7-11 21:52:03

避免中间的东西被定义两次
也就是说你在源程序中include了多次也没关系,因为后面的发现EVMDM642_VDISPARAMS_H已经被定义就跳过

bluefeel 发表于 2011-7-12 08:26:23

#ifndef XX// 如果没有定义XX,编译以下至#endif的程序

#define XX// 定义XX

...

#endif

lianglong 发表于 2011-7-14 09:28:49

回复【5楼】chenchuan
避免中间的东西被定义两次
也就是说你在源程序中include了多次也没关系,因为后面的发现evmdm642_vdisparams_h已经被定义就跳过
-----------------------------------------------------------------------

谢谢这个预定义挺有用啊 呵呵
页: [1]
查看完整版本: 关于头文件的一个小问题,谢谢指教