C语言#include<>和#include““有什么区别?

一、问题

有两种头⽂件包含的形式,⼀种是⽤尖括号将头⽂件括起,⼀种是⽤双引号将⽂件括起。那么,这两种形式有什么区别呢?

二、解答

这两种包含头⽂件的形式都是合法的,也是经常在代码中看到的,两者的区别在于 "<>〞语法通常⽤于标准或系统提供的头⽂件;⽽双引号" "" "通常⽤于程序⾃⼰的头⽂件。

如果在头⽂件⽤" <> "括起,那么在⽤到头⽂件中的常量或者函数时,需要系统到存放C库函数头⽂件所在的⽬录中寻找要包含的⽂件,这称之为标准⽅式,当在系统提供的⽂件中找不到该头⽂件时,就会再次搜索程序⾃⼰的头⽂件。

若在头⽂件⽤双引号" "" "括起,系统先在⽤户当前⽬录中寻找要包含的⽂件,若找不到,再按标准⽅式查找。

了解了两种包含⽅式的区别,那么在写程序的时候,为了节省查找时间,需要在调⽤库函数时⽤"<>"包含相关的头⽂件。如果包含⽤户⾃⼰编写的头⽂件,最好⽤双引号" "" "

注意:

对于双引号形式包含头⽂件,如果⽂件不在当前⽬录下,可以在双引号内给出⽂件的路径。

三、总结

掌握了常见的两种包含⽂件的⽅式,可以进⼀步增加对C语⾔的认识。同时,在⾃⼰写代码的时候,可以根据不同的情况选择⽂件包含⽅式,以节省机器查找⽂件的时间。

相关推荐
彧azz28 分钟前
图的存储结构详解:邻接矩阵的原理、实现与应用
开发语言·数据结构·学习·php
嵌入式学习菌1 小时前
Modbus‑RTU 数据类型分析
开发语言·单片机·bug
matlab代码2 小时前
基于matlab数字图像处理的指纹识别系统【源码68期】
开发语言·matlab
matlab代码2 小时前
基于matlab的水果识别系统(苹果香蕉菠萝梨桃子)【源码65期】
开发语言·matlab
wuyk5552 小时前
从零吃透 MQTT 通信|第 8 章 FreeRTOS 多任务架构下 MQTT 工程架构,任务拆分、队列解耦、临界区保护
c语言·开发语言·stm32·学习·架构
weixin199701080163 小时前
[特殊字符]《跨境二手ERP对接Back Market:标准化API + 7~10工作日技术合规审核实录》(附Python源码)
开发语言·python·pandas
尘客-追梦3 小时前
Day 01:插件化之前,先看清 ABI 这堵墙
开发语言·c++·qt
持敬chijing3 小时前
Python-数据类型-列表
开发语言·python·青少年编程
xx~t3 小时前
嵌入式——51单片机1
linux·c语言·单片机·嵌入式硬件·51单片机
写后端的胖头鱼4 小时前
【高频面试题】Java 基础类型 + 包装类 + String 互相转换
java·开发语言