44问答网
所有问题
c语言 #if 和if的区别
#if后没有def什么的,而是一个条件公式然后就是#endif
这种用法和直接用if有什么区别?
举报该问题
推荐答案 推荐于2018-02-27
有区别,#if 是预编译。#if如果不是真的话, 其后面的代码是不会被编译的。跟#ifdef 差不多,只是#if后面跟的是条件,而 #ifdef后面跟的是一个宏,判断其是否定义。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://44.wendadaohang.com/zd/GRZGVDDR3.html
其他回答
第1个回答 推荐于2018-09-22
#if和if都是C和C++中的指令,但是二者区别很大。
1)#if属于条件编译技术,用于给
编译器
提供信息,控制有些代码变成
机器语言
;
2)if属于程序判断,在程序运行时控制语句是否被执行;
3)#if在程序编译前执行,if在程序运行时执行;
4)#if后面不能写变量,if后面可以写变量。
本回答被网友采纳
第2个回答 2011-05-20
#if 与#endif是成对使用的,预处理
if则是普通的条件判断语句,判断后面紧跟的条件是否为真,为真则执行后面紧跟的语句
预处理不懂的话 很难明白的
到百度 输入 c语言 预处理 然后那个百度文库 挺不错的
第3个回答 2011-05-20
前者是预处理阶段,后者是条件语句。
第4个回答 2011-05-20
加#的都是编译预处理语句:
#if 表达式
#endif
表示的意思是如果if后面的表达式不为0的话就编译#if#endif之间的语句,否则就不编译。
相似回答
大家正在搜
相关问题
c语言 #if 和if有什么区别?
c语言 #if 和if的区别
C语言中#if 0 和#end if 是什么意思?
C语言的#ifdef 和 if defined 的区别
C语言中#if 0 和#end if 是什么意思
关于C语言中if,elseif和else的区别在哪里
关于C语言中#if的用法
C语言中条件编译和If语句之间的差别,各适用于什么情况