“#include <sndfile.h>”是什么意思?(抱歉,我是C/C++新手)
顺便说一下,我知道ActionScript和HTML。
这是一个预处理指令,用于包含名为'sndfile.h'的头文件。基本上意味着在该指令的位置包含该文件的内容,这通常会提供将链接到您的源代码的对象文件的函数定义,并经常定义常量等等......
参见维基百科
简单来说,在这个非常特定的情况下,它意味着:
我将使用由sndfile.h提供的函数和数据结构,这恰好是libsndfile的头文件:http://www.mega-nerd.com/libsndfile/api.html
#include XXX
的意思是,如上所述,在任何其他编译步骤之前将 XXX 的内容包含在源代码中,就好像它们已经被复制和粘贴。
XXX 可以用 <括号>
或 "引号"。 <括号>
文件在系统路径上搜索,而 "引号" 文件在用户路径上搜索。
这些路径的定义方式因编译器和构建系统而异。编译器通常允许用户覆盖此搜索逻辑,但对于自己的头文件使用 "引号",对于系统则使用 <括号>
是一个好习惯。
# include <h-char-sequence> new-line的预处理指令,在一系列实现定义的位置中搜索由<和>分隔符之间的指定序列唯一标识的标题,并导致该指令被标题的整个内容替换。如何指定位置或标识标题是实现定义的。
#include <sndfile.h>
是一个预处理器命令,本质上的作用是将sndfile.h文件的内容复制粘贴到当前文件中。
通常用于从外部库或其他源文件中导入函数定义,这样可以在不必重新编译整个代码库的情况下访问它们。通过将公共定义放在自己的小头文件中,它可以包含在尽可能多的源文件中。这样,只需在更改时更新一个文件,而不必修改所有使用该库的源文件。
#include <stdio.h>
,#include <windows.h>
,#include <getent.h>
等的同样问题吗? - Sinan Ünür