c语言include的用法


2023年12月24日发(作者:starts是什么意思)

c语言include的用法

C语言预处理器指令#include用于在编译期间把制定文件的内容包含进当前文件中,又称文件包含指令。在源文件中,任何形如#include "文件名"或#include <文件名>。下面我们来看看c语言include的用法。

1 iostream与iostream.h的区别:

#include // 这个就是1998年标准化以后的标准头文件

#include // 这个就是标准化以前的头文件

更本质上的区别就是iostream把标准C++库的组件放在一个名位std的namespace里面。而相对的iostream.h则将这些标准 组件放在全局空间里,同时在标准化以后旧有的C标准库也已经经过改造了。 使用前者,就需要在代码中添加语句:using namespace std;

即:#include ==#include + using

namespace std;

2 #include、#include 与#include “xxx.h”的区别:

1>,#include:系统自带的头文件用尖括号括起来,这样编译器会在系统文件目录下查。

2>,#include “xxx.h”:用户自定义的文件用双引号括起来,编译器首先会在用户目录下查,然后在到C++安装目录(比如VC中可以指定和修改库文件查路径,Unix和Linux中可以通过环境变量来设定)中查,最后在系统文件中查。

3 #ifndef /#define/ #endif避免头文件的重定义

在一个大的软件工程里面,可能会有多个文件同时包含一个头文件,当这些文件编译链接成一个可执行文件时,就会出现大量“重定义”的错误。在头文件中实用#ifndef #define #endif能避免头文件的重定义。

方法:例如要编写头文件test.h

在头文件开头写上两行:

#ifndef _TEST_H

#define _TEST_H//一般是文件名的大写

头文件结尾写上一行:

#endif

这样一个工程文件里同时包含两个test.h时,就不会出现重定义的错误了。

分析:当第一次包含test.h时,由于没有定义_TEST_H,条件为真,这样就会包含(执行)#ifndef _TEST_H和#endif之间的代码,当第二次包含test.h时前面一次已经定义了_TEST_H,条件为假,#ifndef _TEST_H和#endif之间的代码也就不会再次被包含,这样就避免了重定义了。


本文发布于:2024-09-22 13:30:50,感谢您对本站的认可!

本文链接:https://www.17tex.com/fanyi/29248.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:文件   头文件   包含   定义   查找
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议