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

一、问题

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

二、解答

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

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

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

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

注意:

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

三、总结

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

相关推荐
傍晚冰川17 分钟前
FreeRTOS任务调度过程vTaskStartScheduler()&任务设计和划分
开发语言·笔记·stm32·单片机·嵌入式硬件·学习
PingdiGuo_guo20 分钟前
C++智能指针的知识!
开发语言·c++
黄雪超20 分钟前
JVM——打开JVM后门的钥匙:反射机制
java·开发语言·jvm
我命由我1234535 分钟前
Spring Boot 项目集成 Redis 问题:RedisTemplate 多余空格问题
java·开发语言·spring boot·redis·后端·java-ee·intellij-idea
Rocky4011 小时前
JAVAEE->多线程:锁策略
java·开发语言·jvm
JSUITDLWXL1 小时前
ideal2022.3.1版本编译项目报java: OutOfMemoryError: insufficient memory
java·开发语言
magic 2451 小时前
Java建造者模式(Builder Pattern)详解与实践
java·开发语言·建造者模式
前端小崔1 小时前
前端面试题之ES6保姆级教程
开发语言·前端·javascript·面试·职场和发展·ecmascript·es6
Love__Tay2 小时前
【学习笔记】Python金融基础
开发语言·笔记·python·学习·金融
Lilith的AI学习日记2 小时前
什么是预训练?深入解读大模型AI的“高考集训”
开发语言·人工智能·深度学习·神经网络·机器学习·ai编程