江湖车侠|C和指针:如何快速上手C语言

从头开始介绍一门编程语言总是显得很困难,因为有许多细节还没有介绍,很难让读者在头脑中形成一幅完整的图 。 在本章中,我将向大家展示一个例子程序,并逐行讲解它的工作过程,试图让大家对C语言的整体有一个大概的印象 。 这个例子程序同时向你展示了你所熟悉的过程在C语言中是如何实现的 。 这些信息再加上本章所讨论的其他主题,向你介绍了c语言的基础知识,这样你就可以自己编写有用的C程序了 。
我们所要分析的这个程序从标准输入读取文本并对其进行修改,然后把它写到标准输出 。 程序1.1首先读取一串列标号 。 这些列标号成对出现,表示输入行的列范围 。 这串列标号以一个负值结尾,作为结束标志 。 剩余的输入行被程序读入并打印,然后输入行中被选中范围的字符串被提取出来并打印 。 注意,每行第1列的列标号为零 。 例如,如果输入如下:
江湖车侠|C和指针:如何快速上手C语言则程序的输出如下:
江湖车侠|C和指针:如何快速上手C语言这个程序的重要之处在于它展示了当你开始编写C程序时所需要知道的绝大多数基本技巧 。
江湖车侠|C和指针:如何快速上手C语言
江湖车侠|C和指针:如何快速上手C语言
江湖车侠|C和指针:如何快速上手C语言程序1.1重排字符
1.1.1 空白和注释
现在,让我们仔细观察这个程序 。 首先需要注意的是程序的空白:空行将程序的不同部分分隔开来;制表符( tab )用于缩进语句,更好地显示程序的结构等等 。 C是一种自由格式的语言,并没有规则要求你必须怎样书写语句 。 然而,如果你在编写程序时能够遵守一些约定还是非常值得的,它可以使代码更加容易阅读和修改 , 千万不要小看了这一点 。
清晰地显示程序的结构固然重要,但告诉读者程序能做些什么以及怎样做则更为重要 。 注释(comment)就是用于实现这个功能 。
江湖车侠|C和指针:如何快速上手C语言这段文字就是注释 。 注释以符号/*开始,以符号*/结束 。 在C程序中,凡是可以插入空白的地方都可以插入注释 。 然而,注释不能嵌套,也就是说,第1个*/符号和第1个*/符号之间的内容都被看作是注释,不管里面还有多少个/*符号 。
在有些语言中,注释有时用于把一段代码“注释掉",也就是使这段代码在程序中不起作用,但并不将其真正从源文件中删除 。 在C语言中,这可不是个好主意,如果你试图在一段代码的首尾分别加上/*和*/符号来“注释掉”这段代码,你不一定能如愿 。 如果这段代码内部原先就有注释存在,这样做就会出问题 。 要从逻辑上删除一段C代码,更好的办法是使用#if指令 。 只要像下面这样使用:
江湖车侠|C和指针:如何快速上手C语言在#if和#endif之间的程序段就可以有效地从程序中去除,即使这段代码之间原先存在注释也无妨,所以这是一种更为安全的方法 。 预处理指令的作用远比你想象的要大,我将在第14章详细讨论这个问题 。


推荐阅读