#include < > 和#include ” ”有什么区别?

news/2024/4/19 2:19:43

C语言头文件

C语言中头文件的扩展名为 .h的头文件,头文件中包含了函数的声明和宏定义,头文件可以被多个源文件引用。在C语言中有两种类型的头文件,一种是编译器自带的头文件,另一种就是程序员自己编写的头文件。

在C程序中如果要使用头文件,则必须使用头文件包含命令 #include ,来引入对应的头文件(.h文件)。#include 是C语言预处理指令的一种。

#include 的处理过程很简单,就是将头文件的内容插入到该命令所在的位置,从而把头文件和当前源文件连接成一个源文件,这与复制粘贴的效果相同。

引用头文件的语法

使用预处理指令 #include 可以引用用户和系统头文件。它的形式有以下两种:

#include 

这种形式用于引用系统头文件。它在系统目录的标准列表中搜索名为 file 的文件。在编译源代码时,通过 -I 选项把目录前置在该列表前。

#include "file"

这种形式用于引用用户头文件。它在包含当前文件的目录中搜索名为 file 的文件。在编译源代码时,通过 -I 选项把目录前置在该列表前。

使用尖括号< >和双引号" "的区别在于头文件的搜索路径不同:

使用尖括号< >,编译器会到系统路径下查找头文件;

而使用双引号" ",编译器首先在当前目录下查找头文件,如果没有找到,再到系统路径下查找。

也就是说,使用双引号比使用尖括号多了一个查找路径,它的功能更为强大。

在C语言编程中,我们习惯使用尖括号来引入标准头文件,而使用双引号来引入自定义头文件(自己编写的头文件),这样一眼就能看出头文件的区别。

关于 #include 用法的注意事项:

一个 #include 命令只能包含一个头文件,多个头文件需要多个 #include 命令。

同一个头文件可以被多次引入,多次引入的效果和一次引入的效果相同,因为头文件在代码层面有防止重复引入的机制。

#ifndef _HEAD_H

#define _HEAD_H

#endif

文件包含允许嵌套,也就是说在一个被包含的文件中又可以包含另一个文件。

#include 用法举例

在add.c中定义了add()函数,在head.h中声明了add()函数,main.c中,#include引用标准输入输出头文件,#include”head.h”引用我们自己写的head.h头文件,main()函数是程序的入口,printf()函数是标准输出函数,它的作用是向终端输出若干个任意类型的数据,add()函数在add.c中定义了,在main.c中的main()函数中进行了调用。

对嵌入式物联网感兴趣的小伙伴,可以多了解一下相关信息。(看过来)

 


http://www.ppmy.cn/news/345034.html

相关文章

mapbox分屏地图同步缩放拖拽旋转

成果图 之前写过一版&#xff0c;后来又经过一些优化&#xff0c;形成了现在的最终版本&#xff0c;之前是二维的&#xff0c;现在是三维的也可以了&#xff0c;地址在这儿 https://blog.csdn.net/Sakura1998gis/article/details/113175905 实现 监听动作 // 拖拽同步map.on(d…

php怎么在线预览word文件?php预览.doc、.docx、.wps文件

php预览Word PHP要实现在线Word预览只需要3步 第一步&#xff1a; 准备一个文件地址&#xff0c;如下&#xff1a; http://usdoc.cn/vw/文件模板.docx 第二步 预览前置地址&#xff1a; http://vw.usdoc.cn/?src 第三步 开始预览 http://vw.usdoc.cn/?srchttp://usdoc.cn/vw/…

跟国内这几个名校MBA项目学费比,浙大就是小弟弟……

MBA学费这些年来一直都是牵绊考生心绪的一个重要因素&#xff0c;在每年此起彼伏的调价声浪中&#xff0c;上岸时间的早或晚往往意味着成本方面看得见的增加&#xff0c;在去年的MBA招录过程中&#xff0c;部分院校也调整了相关学费&#xff0c;浙大MBA项目以33.6万的学费也跻身…

[数据结构初阶]单链表

顾名思义&#xff0c;单链表就是一个相邻节点用一个单向指针串起来&#xff0c;形成一种链式结构&#xff0c;那怎么将这些节点连结起来方便管理呢&#xff1f; 目录 单链表定义 申请空间 创建节点 打印链表 尾插 尾删 头插 头删 查找 插入 删除 pos后删除 pos位置删除…

Flutter的FittedBox控件

简介 FittedBox是Flutter中的一个控件&#xff0c;它用于调整其子控件的大小以适应可用空间。它会根据子控件的大小和可用空间的大小&#xff0c;自动进行缩放或拉伸操作&#xff0c;以使子控件恰好填充可用空间。 属性 FittedBox的常用属性包括&#xff1a; fit&#xff1…

《程序员的自我修养--链接、装载与库》笔记

写在前面&#xff1a;本文是我在阅读《程序员的自我修养–链接、装载与库》一书时做的笔记&#xff0c;所谓好记性不如烂笔头嘛&#xff0c;其中主要摘抄记录了本人着重阅读的章节&#xff1b;除此之外还有小部分本人对书中内容的个人理解、以及文章中出现的小错误标明&#xf…

无人机+AI人工智能可以实现哪些领域的场景应用?

全球无人机行业发展迅猛&#xff0c;商用、消费级无人机市场也逐年增长。无人机凭借着可大范围观察地面区域、灵活、效率高等优势&#xff0c;不论是在军用还是民用领域&#xff0c;均发挥了重要的作用。通过搭载各种任务设备&#xff0c;无人机可以在各种场景中执行复杂的观测…

人工智能(Artificial Intelligence)

今天一个完全不懂人工智能和计算机的小伙伴问我自然语言处理的工作怎么样&#xff1f;我说这个是属于人工智能的一部分&#xff0c;他就搞不清楚这个人工智能和计算机是什么关系&#xff1f;我告诉他计算机是工具&#xff0c;人工智能一般是有落地产品的&#xff0c;细节上的我…

人工智能 AI

最近&#xff0c;麦肯锡一篇长达20页PDF的报告对中国AI当下的发展状态进行了全面而细致的介绍。文章从学术研究、算法、数据、计算能力四个角度分析中国的AI实力。文章指出&#xff0c;AI 对中国发展事关重大&#xff0c;但是目前的关键是人才。 文章最后为中国AI的发展提出了5…

Java和Python,哪个更适合开发AI人工智能?

当今的机器世界需要能够改变我们生活、工作和娱乐方式的技术。考虑到智能系统和具有行为算法、智能搜索和能够自行学习的智能系统的需求&#xff0c;约翰麦卡锡将人工智能引入了我们的世界&#xff0c;并被亲切地称为人工智能。 这些 AI 在后端需要某种语言作为其支柱。在这篇博…

【人工智能】

人工智能 人工智能、机器学习、神经网络、监督学习、无监督学习、强化学习、深度学习、深度强化学习&#xff0c;之间的关系&#xff1a; 人工智能就是让计算机模拟人类的思维&#xff1b;机器学习就是让计算机不断地学习&#xff0c;也就是喂给它大量的数据&#xff0c;让它从…

【大数据AI人工智能】变革人类社会的第四次工业革命——AI人工智能革命已到来

霍金曾留下几句话: 在我的一生中,我见证了很多社会深刻的变化。其中最深刻,同时也是对人类影响与日俱增的变化就是人工智能的崛起。 人工智能的真正风险不是它的恶意,而是它的能力。一个超智能的人工智能在完成目标方面非常出色,如果这些目标与我们的目标不一致,我们就会…

CN-第一章 计算机网络概述

一&#xff0c;思维导图 二&#xff0c;计算机网络概述与定义 1.定义 2.网络&#xff0c;互联网&#xff0c;因特网的基本概念。 结点&#xff1a;在数据通信中&#xff0c;网络结点可以是数据通信设备&#xff08;DCE&#xff09;&#xff0c;比如调制解调器&#xff0c;集线…

Python爬虫抓取网页

本节讲解第一个 Python 爬虫实战案例&#xff1a;抓取您想要的网页&#xff0c;并将其保存至本地计算机。 首先我们对要编写的爬虫程序进行简单地分析&#xff0c;该程序可分为以下三个部分&#xff1a; 拼接 url 地址发送请求将照片保存至本地 明确逻辑后&#xff0c;我们就…

网络安全合规-网络安全架构

一、安全框架及模型定义 信息安全模型是用于精确和形式的描述信息系统的安全特征,以及用于解释系统安全相关行为的理由。 安全模型的作用&#xff1a; 准确地描述安全的重要方面与系统行为的关系。 提高对成功实现关键安全需求的理解层次。 从中开发出一套安全性评估准则&…

新型糖基化氨基酸:Fmoc-Thr((Ac4Galβ1-3)Me,Ac4Neu5Acα2-6AcGalNAcα)-OH,化学CAS号174783-92-7

●英文名&#xff1a;Fmoc-Thr((Ac4Galβ1-3)Me,Ac4Neu5Acα2-6AcGalNAcα)-OH ●外观以及性质&#xff1a; Fmoc-Thr((Ac4Galβ1-3)Me,Ac4Neu5Acα2-6AcGalNAcα)-OH中通过对蛋白进行复杂蛋白糖基化修饰&#xff0c;细胞产生了极大丰度的蛋白质类型&#xff1b;通过对各类糖基…

windows 修改MYSQL密码

1、打开服务列表找到MYSQL安装bin目录 winR mstsc 2、打开目录&#xff0c;地址栏输入 cmd 打开命令窗口 mysql -uroot -p 输入密码 3、-- 录入一下命令&#xff0c;修改密码 set password for rootlocalhostpassword(新设密码); 4、-- 退出 exit

Redis问题处理

1、jemalloc/jemalloc.h&#xff1a;没有那个文件或目录 解决方法&#xff1a; 正确解决办法(针对2.2以上的版本) 清理上次编译残留文件&#xff0c;重新编译 make distclean && make

详解非结构化数据治理

随着互联网技术的日新月异&#xff0c;内容数据逐渐在各行业的业务中占据更重要的地位。日常的业务过程中&#xff0c;需要处理的大量电子文档、图片、音频、视频等&#xff0c;都属于内容数据范畴。 例如&#xff0c;某银行的无人营业网点的远程业务办理中&#xff0c;要求用户…

计算机主机箱内部硬件,电脑主机箱内部硬件概说(物语5)

应用程序是如何在电脑中执行的&#xff1f;从程序的输入到显示显示器按程序要求输出“hello world&#xff01;”整个过程在电脑内部是怎样的经历&#xff1f;要想明白这个过程&#xff0c;需要对电脑有个粗略的了解&#xff0c;才能说清楚。 我们大致了解一下电脑主机箱内部大…