my_print (char *string)
{
printf ("The string is %s\n", *string);
}
my_print2 (char *string) {
char *string2;
int size, size2, i;
size = strlen (string);
size2 = size -1;
string2 = (char *) malloc (size + 1);
for (i = 0; i < size; i++)
string2[size2 - i] = string;
string2[size] = `\0';
printf ("The string printed backward is %s\n", string2);
} 运行 indent 后的 C 代码: #include
main ()
{
char my_string[] = "hello there";
my_print (my_string);
my_print2 (my_string);
}
my_print (char *string)
{
printf ("The string is %s\n", *string);
}
my_print2 (char *string)
size2 = size -1;
string2 = (char *) malloc (size + 1);
for (i = 0; i < size; i++)
string2[size2 - i] = string;
string2[size] = `\0';
printf ("The string printed backward is %s\n", string2);
} indent 并不改变代码的实质内容, 而只是改变代码的外观. 使它变得更可读, 这永远是一件好事. gprof gprof 是安装在你的 Linux 系统的 /usr/bin 目录下的一个程序. 它使你能剖 析你的程序从而知道程序的哪一个部分在执行时最费时间. gprof 将告诉你程序里每个函数被调用的次数和每个函数执行时所占时间的百分 比. 你如果想提高你的程序性能的话这些信息非常有用. 为了在你的程序上使用 gprof, 你必须在编译程序时加上 -pg 选项. 这将使程 序在每次执行时产生一个叫 gmon.out 的文件. gprof 用这个文件产生剖析信息. 在你运行了你的程序并产生了 gmon.out 文件后你能用下面的命令获得剖析信息: gprof 参数 program_name 是产生 gmon.out 文件的程序的名字.
技巧: gprof 产生的剖析数据很大, 如果你想检查这些数据的话最好把输出重 定向到一个文件里.
f2c 和 p2c f2c 和 p2c 是两个源代码转换程序. f2c 把 FORTRAN 代码转换为 C 代码, 包含很多文件的话你可能要用到一些命令行选项. 在一个 FORTRAN 程序上使用 f2c , 输入下面的命令: f2c my_fortranprog.f
注意: f2c 要求被转换的程序的扩展名为 .f 或 a .F .
要把一个Pascal 程序装换为 C 程序, 输入下面的命令: p2c my_pascalprogram.pas 这两个程序产生的 C 源代码的文件名都和原来的文件名相同, 但扩展名由 .f 或 .pas 变为 .c. 什么是 C? C 是一种在 UNIX 操作系统的早期就被广泛使用的通用编程语言. 它最早是由贝尔实 验室的 Dennis Ritchie 为了 UNIX 的辅助开发而写的, 开始时 UNIX 是用汇编语言和一种叫 B 的语言编写的. 从那时候起, C 就成为世界上使用最广泛计算机语言.
C 能在编程领域里得到如此广泛支持的原因有以下一些: 它是一种非常通用的语言. 几乎你所能想到的任何一种计算机上都有至少一种能用的 C 编译器. 并且它的语法和函数库在不同的平台上都是统一的, 这个特性对开发者来说很有吸引力. 用 C 写的程序执行速度很快. C 是所有版本的UNIX上的系统语言. C 在过去的二十年中有了很大的发展. 在80年代末期美国国家标准协会(American National Standards Institute)发布了一个被称为 ANSI C 的 C 语言标准.这更加保证 了将来在不同平台上的 C 的一致性. 在80年代还出现了一种 C 的面向对象的扩展称为 C++. C++ 将在另一篇文章 "C++ 编程"中描述. Linux 上可用的 C 编译器是 GNU C 编译器, 它建立在自由软件基金会的编程许可 证的基础上, 因此可以自由发布. 你能在 Linux 的发行光盘上找到它.
GNU C 编译器 随 Slackware Linux 发行的 GNU C 编译器(GCC)是一个全功能的 ANSI C 兼容编译 器. 如果你熟悉其他操作系统或硬件平台上的一种 C 编译器, 你将能很快地掌握 GCC. 本节将介绍如何使用 GCC 和一些 GCC 编译器最常用的选项.
使用 GCC 通常后跟一些选项和文件名来使用 GCC 编译器. gcc 命令的基本用法如下: gcc [options] [filenames] 命令行选项指定的操作将在命令行上每个给出的文件上执行. 下一小节将叙述一些 你会最常用到的选项.
GCC 选项 GCC 有超过100个的编译选项可用. 这些选项中的许多你可能永远都不会用到, 但一 些主要的选项将会频繁用到. 很多的 GCC 选项包括一个以上的字符. 因此你必须为每个选项指定各自的连字符, 并且就象大多数 Linux 命令一样你不能在一 个单独的连字符后跟一组选项. 例如, 下面的两个命令是不同的: gcc -p -g test.c
(编辑:aniston)
|