在C语言中,条件编译是什么意思?

WBOY
WBOY 转载
2023-09-05 17:29:05 350浏览

在C语言中,条件编译是什么意思?

在C编程语言中,有几个指令控制程序代码的选择性编译。它们如下所示 −

  • #if
  • #else
  • #elif
  • #endif

#if的一般形式如下 −

#if constant_expression
   statement sequence
#endif

#else的工作方式与C关键字else类似。

#elif表示“else if”,并建立一个if else-if编译链。

除其他外,#if还提供了一种“注释掉”代码的替代方法。

例如,

#if 0
   printf("#d", total);
#endif

在这里,编译器将忽略printf("#d", total);

#ifdef和#ifndef

#ifdef表示"如果定义了",并以# endif结尾。

#ifdef表示"如果未定义"。

#undef

#undef删除先前定义的定义。

#line

#line更改__LINE__的内容,其中包含当前编译代码的行号和__FILE__,它是一个包含正在编译的源文件名称的字符串。这两个都是编译器中预定义的标识符。

#pragma

#pragma指令是一个实现定义的指令,允许给编译器提供各种指令。

示例

以下是C程序演示#ifdef,#ifndef,#else和#endif的示例-

Live Demo

# include <stdio.h>
# define a 10
void main(){
   #ifdef a
   printf("

Hello I am here.."); #endif #ifndef a printf("

Not defined "); #else printf("

R u There "); #endif }

输出

当上述程序被执行时,它产生以下结果 −

Hello I am here..
R u There

以上就是在C语言中,条件编译是什么意思?的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:tutorialspoint,如有侵犯,请联系admin@php.cn删除