C语言 #include <> 与 #include “” 区别 - C语言零基础入门教程
目录
- 一.什么是头文件
- 二.#include <>
- 三.#include “”
- 四.#include <> 与 #include “” 区别
- 五.猜你喜欢
零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门
在 C 语言或者 C++ 中,包含头文件的是会使用 #include , 可能有小伙伴会问 头文件 到底是个什么玩意??
一.什么是头文件
在 C 语言或者 C++ 中,头文件一般为 .h 结尾,h 表示 header,因此被称为“头文件”。
头文件里一般存放公开的函数原型,数据类型等内容,其他模块需要使用这些函数或者数据类型时,只需包含相应头文件即可。
举个例子:你想做饭,就得去厨房,有了厨房,你想吃面条就下面条,想吃饭就煮饭;你想上厕所,就得去找厕所,然后该撒尿撒尿,该拉粑粑就拉粑粑……
二.#include <>
#include <> 表示包含系统目录指定的头文件,如果在系统目录中找不到对应的头文件,会报错:No such file or directory!
其实在安装 Visual Studio 时,系统目录就已经设置好了,比如我的默认设定在 C:\Program Files (x86)\Microsoft Visual Studio\2015\Community\VC\Tools\MSVC\14.14.26428\include 这个文件夹,当我使用 #include <> 时候,编译器就会在这个目录下面寻找,如果找不到对应的头文件,编译器报错,例如:
/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:C语言教程 - C语言 #include <> 与 #include "" 区别
//@Time:2021/07/02 08:00
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/#include "stdafx.h"
#include <test123.h>int _tmain(int argc, _TCHAR* argv[])
{return 0;
}/*
输出:fatal error C1083: 无法打开包括文件: “test123.h”: No such file or directory
*/
三.#include “”
#include “” 表示包含指定的头文件,优先在当前工程的头文件目录寻找对应的头文件,如果在工程头文件目录中找不到对应的头文件,那么会继续在系统目录中查找对应的头文件,如果系统目录和工程头文件目录都找不到对应的头文件就会报错:No such file or directory!
四.#include <> 与 #include “” 区别
//写法一:推荐
#include <stdio.h>
//写法二:不推荐
#include "stdio.h"
其实对于上面这两种写法,最后的效果都是一样的
#include <stdio.h> 会直接在系统目录搜索 stdio.h ,如果系统目录也搜索不到,直接报错:No such file or directory!;
#include “stdio.h” 首先在工程目录搜索 stdio.h ,如果工程目录搜索不到,会继续在系统目录搜索 stdio.h ,如果系统目录也搜索不到,直接报错:No such file or directory!
对比可以发现:虽然第一种写法和第二种写法效果一样,但是第二种查找头文件的时候更耗时间,所以,系统的头文件推荐使用第一种写法!
五.猜你喜欢
- C 语言 数组下标越界和内存溢出区别
- C 语言 指针声明和定义
- C 语言 指针 p++ / p–
- C 语言 p++/§++/_(p++)/_p++
- C 语言 使用指针遍历数组
- C 语言 指针和数组区别
- C 语言 指针数组和数组指针区别
- C 语言 空指针 NULL
- C 语言 void 指针
- C 语言 野指针
- C 语言 函数值传递和址传递
- C 语言 函数缺省参数
- C 语言 函数不定长参数
- C 语言 函数指针
- C 语言 指针函数
- C 语言 回调函数 callback
- C 语言 typedef
- C 语言 define 定义常量
- C 语言 define 防止头文件重复包含
- C 语言 #pragma once
- C 语言 #include <> 与 #include “” 区别
未经允许不得转载:猿说编程 » C 语言 #include <> 与 #include “” 区别
C语言 #include <> 与 #include “” 区别 - C语言零基础入门教程相关推荐
- C语言 const 修饰函数参数 - C语言零基础入门教程
C语言 const 修饰函数参数 - C语言零基础入门教程 目录 一.const 简介 1.const 修饰变量 2.const 修饰指针 3.const 修饰在函数名前面 4.const 修饰在函数 ...
- C语言 vprintf 函数和 printf 函数区别 - C语言零基础入门教程
目录 一.vprintf 函数和 printf 函数声明简介 1.printf 函数声明 2.vprintf 函数声明 二.vprintf 函数和 printf 函数使用 三.猜你喜欢 零基础 C/C ...
- C语言 全局变量和局部变量区别 - C语言零基础入门教程
目录 一.全局变量和局部变量简介 1.全局变量简介 2.局部变量简介 二.全局变量和局部变量注意事项 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语 ...
- C语言 NULL 和 0 区别 - C语言零基础入门教程
目录 一.关于 NULL 定义 二.NULL 和 0 区别 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> C 语言基础入门 一.关于 NULL 定义 NU ...
- C语言 const 和 define 区别 - C语言零基础入门教程
目录 一.const 使用 1.const 修饰变量 2.const 修饰指针 3.const 修饰在函数名前面 4.const 修饰在函数名后面 5.const 修饰函数参数 二.define 使用 ...
- C语言 函数指针和指针函数区别 - C语言零基础入门教程
目录 一.函数指针和指针函数声明的区别 1.函数指针 2.指针函数 二.函数指针和指针函数调用的区别 1.函数指针的调用 2.指针函数的调用 三.猜你喜欢 零基础 Python 学习路线推荐 : C/ ...
- C语言 指针和数组区别 - C语言零基础入门教程
目录 一.前言 二.指针和数组区别 1.通过 sizeof 获取大小 a.计算数组大小 b.计算指针大小 2.指针和数组赋值方式不同 a.指针赋值 b.数组赋值 3.指针是指针变量,数组是指针常量 三 ...
- C语言 typedef 和 define 区别 - C语言零基础入门教程
目录 一.typedef 简介 1.typedef 简化复杂的类型声明 A.定义普通变量 B.定义函数指针 C.定义结构体 2.定义与平台无关的类型 二.define 简介 三.typedef 和 d ...
- C语言 指针数组和数组指针区别 - C语言零基础入门教程
目录 一.简介 1.数组 2.指针 3.指针和数组区别 二.指针数组和数组指针区别 1.指针数组 2.数组指针 三.猜你喜欢 零基础 C/C++ 学习路线推荐 : C/C++ 学习目录 >> ...
最新文章
- 【活动】人工智能产学研生态建设研讨会报名
- hive金额怎么转换千位分隔符_金额字段加千位分隔符方法
- css3学习 理论之渐变
- java学习(168):java连接SQL server数据库
- binhemedia.cn 联系我们_【图片】想在邵阳市打个水井找谁好,附近专业快速钻井唐师傅联系电话,【邵阳生活吧】...
- WF4 Bata 2
- [Python] 中英文标点转换
- python 写csv scrapy_scrapy爬虫框架实例一,爬取自己博客
- 贪心算法及常见例子(附python实现代码)
- 计算机组装与维护思考问题,计算机组装与维护心得体会
- Chain ‘MASQUERADE‘ does not exist 报错解决
- 使用接口实现打印机功能
- linux内核创建软链接过程,Linux内核2.4.18创建符号链接的系统调用sys_symlink分析
- 宇视科技android面试_宇视科技初面
- 设置WinSCP实时更新目录
- 3D激光雷达SLAM算法学习02——3D激光雷达传感器
- HashMap中的bucket介绍
- 在线教育:直播视频有哪些运营方式呢?
- 寒風的Cocos2dx之旅之剪刀、石头、布系列专题(2 )
- ILF、EIF、EI、EO、EQ的区别与联系
热门文章
- “视频云营业厅”发布,蚂蚁 mPaaS 加速金融机构数字化转型
- 绿网天下:上云解决系统安全和安全合规
- 构建实时数据仓库首选,云原生数据仓库AnalyticDB for MySQL技术解密
- 搜索场景下的智能推荐演变之路
- “大团队”和“敏捷开发”,谁说不可兼得?
- 《阿里巴巴Android开发手册》v1.0.1更新,优化部分内容和示例代码
- 元宇宙“性骚扰”现象频出,Meta推出“个人结界”能保护好女玩家吗?
- 之前写的 JSX 的条件语句竟然存在那么多 Bug?
- 深信服何朝曦:托管云为用户上云提供第三种选择
- Kubernetes 并非灵丹妙药...