C语言笔记(10)数据结构-顺序表

本文深入解析C语言中#ifndef预处理指令的用法,通过示例代码展示了如何使用#ifndef来控制代码段的编译,避免重复定义宏带来的问题。同时,文章强调了#ifndef在条件编译中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C语言#ifndef指令

#define x //定义一个宏

#endif
//C语言在对程序进行编译时,会先根据预处理命令进行“预处理”。C语言编译系统包括预处理,编译和链接等部分。
#ifndef x //先测试x是否被宏定义过
#define x
程序段1 //如果x没有被宏定义过,定义x,并编译程序段 1
#else
程序段2 //如果x已经定义过了则编译程序段2的语句,“忽视”程序段 1。
#endif//终止if

#ifndef预处理程序指令检查宏是否为未由#define定义。如果是,则执行代码,否则#else代码执行(如果存在)。
语法:

#ifndef MACRO  
    //code  
#endif

#else语法:

#ifndef MACRO  
    //successful code  
#else  
    //else code  
#endif

#ifndef示例
下面来看看一个简单使用#ifndef预处理指令的例子。创建一个源文件:ifndef-example.c,其代码实现如下 -

#include <stdio.h>  

#define INPUT  
void main() {
    int a = 0;
#ifndef INPUT  
    a = 2;
#else  
    printf("Enter a:");
    scanf("%d", &a);
#endif         
    printf("Value of a: %d\n", a);
}

执行上面示例代码,得到以下结果 -

Enter a:200
Value of a: 200

但是,如果不定义INPUT,它将执行#ifndef的代码块。创建一个源文件:ifndef-example2.c,其代码实现如下

#include <stdio.h>  

void main() {
    int a = 0;
#ifndef INPUT  
    a = 2;
#else  
    printf("Enter a:");
    scanf("%d", &a);
#endif         
    printf("Value of a: %d\n", a);
}


执行上面示例代码,得到以下结果 -

Value of a: 2

C语言是学怎么写程序
数据结构是让我们写的程序怎样才能更加高效
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值