在Linux系统中,.c
文件是 C语言源代码文件,其特点和使用场景如下:
.c
是C语言源代码的标准扩展名。vim
、nano
、gedit
)查看或编辑。.c
文件形式存在。nginx
、bash
)的核心代码由.c
文件组成。需通过GCC等编译器将.c
文件编译为可执行文件:
# 基本编译
gcc hello.c -o hello
# 运行
./hello
常用编译选项:
- -Wall
:显示所有警告。
- -g
:添加调试信息(用于GDB)。
- -O2
:优化代码性能。
文件类型 | 扩展名 | 用途 |
---|---|---|
头文件 | .h |
声明函数/宏,供.c 文件包含。 |
对象文件 | .o |
编译后的二进制中间文件。 |
可执行文件 | 无扩展名 | 编译链接后的最终程序。 |
假设有一个hello.c
文件:
#include <stdio.h>
int main() {
printf("Hello, Linux!\n");
return 0;
}
编译运行步骤:
gcc hello.c -o hello && ./hello
输出:
Hello, Linux!
bash
gcc -g hello.c -o hello
gdb ./hello
bash
valgrind ./hello
Q:为什么编译时报错“undefined reference”?
A:可能缺少链接库,使用-l
选项指定(如-lm
链接数学库)。
Q:如何查看C标准库文档?
A:Linux终端运行man 3 printf
查看函数手册。
通过以上说明,.c
文件是Linux下C语言开发的核心载体,掌握其编译和调试方法对系统编程至关重要。