C语言之语法

1. #if defined #endif

#if defined ( POWER_SAVING )
osal_pwrmgr_device( PWRMGR_BATTERY );
#endif

#if (**)
{语句##;}
#endif
如果(**)为真,也就是逻辑1,的话就编译下面的语句。如果(**)不为真。则不编译下面的语句。

2. #ifndef #define #endif
头件的中的#ifndef,这是一个很关键的东西。比如你有两个C文件,这两个C文件都include了同一个头文件。而编译时,这
两个C文件要一同编译成一个可运行文件,于是问题来了,大量的声明冲突。

还是把头文件的内容都放在#ifndef和#endif中吧。不管你的头文件会不会被多个文件引用,你都要加上这个。一般格式是这样的:

#ifndef <标识>
#define <标识>

......
......

#endif

<标识>在理论上来说可以是自由命名的,但每个头文件的这个“标识”都应该是唯一的。标识的命名规则一般是头文件名全大写,前后加下
划线,并把文件名中的“.”也变成下划线,如:stdio.h

例如:
#ifndef _STDIO_H_
#define _STDIO_H_

......

#endif

posted @ 2014-07-17 16:52  柠檬恋上雨  阅读(167)  评论(0编辑  收藏  举报