学习笔记(16):C语言 从小白到大神: 入门篇-文件包含和条件编译

立即学习:https://edu.csdn.net/course/play/8088/175768?utm_source=blogtoedu

1. 文件包含

将另一个文件的内容包含到本文件中,一般通过#include来实现

一般形式:#include "文件名"

说明:

(1)很多公共修改都可以放到这个.h文件中进行了。但是你一旦修改了这个.h,也相当于修改了#inlcude这个.h的所有.cpp文件,那这些.cpp文件显然也得重新编译了

(2)一个#inlcude只能包含一个文件,如果要#include多个文件,那就使用多个#include

(3)文件包含是可以嵌套的。一个头文件中可以#include其他头文件

(4)自己写的.h头文件用#include".h",标准的头文件使用#include<.h">

 

2. 条件编译

条件编译几种形式:

(1)形式1:

#ifdef 标识符

    程序段1(一堆代码)

#else

    程序段2

#endif

作用:当标识符被定义过(#define来定义),则对程序段1进行编译,否则对程序段2进行编译。#else部分可以没有

(2)形式2:

形式2:

#ifndef 标识符

    程序段1(一堆代码)

#else

    程序段2

#endif

作用:若标识符未被定义,则编译程序段1,否则编译程序段2;与形式1正好相反。#else部分可以没有

(3)形式3:

#if 表达式

    程序段1

#else

    程序段2

#endif

作用:当指定的表达式值为真(非0)时就编译程序段1,否则编译程序段2,那我们事先给定一定的条件,就可以使程序在不同条件下执行不同的功能。

(4)形式4:

#if 表达式1

    程序段1

#elif  表达式2

    程序段2

#else

    程序段3

#endif

作用:当表达式1值为真(非0)时就编译程序段1,否则当表达式2的值为真(非0)则编译程序段2,否则编译程序段3

 

条件编译的好处:

(1)条件编译可以减少目标程序长度

(2)解决跨平台开发问题,增加程序的可移植性,增加程序的灵活性,如:

#if _WIN32

    //windows专用函数

    //WaitForSingleObject()

#elif __linux__

    //linux专用函数

    //epoll()

#else

#endif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值