当我编写如下代码时
#include <stdio.h>
int main(int argc, char** argv) {
printf("Hello, world!\n");
return 0;
}
gcc 导入
stdio.h
,而这又需要一个关联的 stdio.c
,其中定义了函数。我知道在 Linux 上 stdio.h
位于 /usr/include/stdio.h
但 stdio.c
在哪里?没有 /usr/include/stdio.c
,但显然,gcc
可以很好地编译此代码。
libc 与大多数库一样,会提前编译并作为编译库随系统一起提供。在 Linux 上,该库称为 libc.a(用于静态链接)或 libc.so(用于动态链接),通常可以在 /usr/lib 或其子目录之一中找到。