社区
C语言
帖子详情
关于 c语言中的#ifdef
lg2lg
2005-10-20 08:46:18
我最近在学习c语言中,看见一程序开头有
#ifndef LATTICE
但我在程序中未找见 LATTICE 的定义
想请教大家这个东西来自那里
有什么用
我还在程序中找见 DEBUG
...全文
299
8
打赏
收藏
关于 c语言中的#ifdef
我最近在学习c语言中,看见一程序开头有 #ifndef LATTICE 但我在程序中未找见 LATTICE 的定义 想请教大家这个东西来自那里 有什么用 我还在程序中找见 DEBUG
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
踏岸寻柳
2005-10-24
打赏
举报
回复
关于#ifdef、#ifndef在不同的地方有不同的用途;
1. 头文件中,防止重复包含;
2. 代码中,针对不同的宏执行不同的语句。
fiftymetre
2005-10-20
打赏
举报
回复
#ifdef UNICODE
#define CF_TCHAR CF_UNICODETEXT
TCHAR szDefaultText[] = TEXT ("Default Text - Unicode Version") ;
TCHAR szCaption[] = TEXT ("Clipboard Text Transfers - Unicode Version") ;
#else
#define CF_TCHAR CF_TEXT
TCHAR szDefaultText[] = TEXT ("Default Text - ANSI Version") ;
TCHAR szCaption[] = TEXT ("Clipboard Text Transfers - ANSI Version") ;
#endif
看了上面的代码你就明白老。:)
rabbitweng
2005-10-20
打赏
举报
回复
这样做我想是为了防止这种情况:
如果文件a include了头文件b,
头文件c也include了头文件b,
如果没有在头文件c中用#ifndef这种条件编译,且你在自己的源程序中同时include头文件a和c,就会出现重复定义文件b中变量的问题,所以一般的头文件(无论是系统还是自定义的)的格式最好是
#ifndef 与此头文件名称相关的一个宏
...(具体头文件内容)
#endif
这样一般就不会出现重复定义某些头文件中的变量的问题了
索思索想
2005-10-20
打赏
举报
回复
一般来说,#ifndef下面应该给出的就是宏定义
程序最后是不是用#endif结束的?
yangyzqo
2005-10-20
打赏
举报
回复
希望能看一些关于预编译方面的资料,说不定有些帮助
goodluckyxl
2005-10-20
打赏
举报
回复
ifndef LATTICE
如果未定义此标号 那么下面的代码就要被编译了
这无所谓只是预编译一些配置
晨星
2005-10-20
打赏
举报
回复
#ifndef LATTICE
的意思就是“如果LATTICE未被定义……”;
此外,你用的应该是VC吧?像VC这种功能比较强大的集成开发环境中,预编译符号也未必只能在源文件中定义,在工程配置文件中也可以定义。
copygirl
2005-10-20
打赏
举报
回复
嗯,主要就是为了防止文件被重复包含的,有时也用在调试中。
前面带有#的宏指令是在编译的时候就被处理的,
有的代码里写#ifdef DEBUG printf("test");
如果在文件头定义了DEBUG: #define DEBUG,则这句会打印一下调试信息:test,否则不执行这句。
相当于if(debug) printf("test");
如果你在前面把debug赋值为非0,则打印test,否则不打印
c语言
#if
def
等宏及妙用
描述了在
C语言
中
的#if
def
等宏及妙用
C语言
之详解#if
def
等宏及妙用
C语言
之详解#if
def
等宏及妙用
C语言
之详解#if
def
等宏及妙用
C语言
之详解#if
def
等宏及妙用
C语言
之详解#if
def
等宏
C语言
之详解#if
def
等宏
C语言
之详解#if
def
等宏
C语言
之详解#if
def
等宏
条件编译解释
本文档详细介绍了
C语言
中
#if
def
...#endif条件编译的定义及如何使用情况。
c语言
_if
def
等宏及妙用
以下全部代码的执行环境为VC++ 6.0。
C语言
69,371
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章