文档介绍:Linux 下的 C 语言编程-- 基础知识篇前言: 这篇文章介绍在 LINUX 下进行 C 语言编程所需要的基础知识. 在这篇文章当中, 我们将会学到以下内容: 源程序编译 Makefile 的编写程序库的链接程序的调试头文件和系统求助-------------------------------------------------------------------------------- 1. 源程序的编译在 Linux 下面, 如果要编译一个 C 语言源程序, 我们要使用 GNU 的 gcc 编译器. 下面我们以一个实例来说明如何使用 gcc 编译器. 假设我们有下面一个非常简单的源程序(): int main(int argc,char **argv) { printf("Hello Linux\n"); } 要编译这个程序, 我们只要在命令行下执行: gcc -o hello gcc 编译器就会为我们生成一个 hello 的可执行文件. 执行./hello 就可以看到程序的输出结果了. 命令行中 gcc 表示我们是用 gcc 来编译我们的源程序,-o 选项表示我们要求编译器给我们输出的可执行文件名为 hello 而 是我们的源程序文件. gcc 编译器有许多选项, 一般来说我们只要知道其中的几个就够了. -o 选项我们已经知道了, 表示我们要求输出的可执行文件名. -c 选项表示我们只要求编译器输出目标代码, 而不必要输出可执行文件. -g 选项表示我们要求编译器在编译的时候提供我们以后对程序进行调试的信息. 知道了这三个选项, 我们就可以编译我们自己所写的简单的源程序了, 如果你想要知道更多的选项, 可以查看 gcc 的帮助文档, 那里有着许多对其它选项的详细说明. 的编写假设我们有下面这样的一个程序, 源代码如下: /* */ #include "" #include "" int main(int argc,char **argv) { mytool1_print("hello"); mytool2_print("hello"); } /* */ #ifndef _MYTOOL_1_H #define _MYTOOL_1_H void mytool1_print(char *print_str); #endif /* */ #include "" void mytool1_print(char *print_str) { printf("This is mytool1 print %s\n",print_str); } /* */ #ifndef _MYTOOL_2_H #define _MYTOOL_2_H void mytool2_print(char *print_str); #endif /* */ #include "" void mytool2_print(char *print_str) { printf("This is mytool2 print %s\n",print_str);