C Primer Plus(二)

 

 第二章C语言概述 

 

2.1C语言的一个简单实例

  1. #include<stdio.h>
  2. int main(void)
  3. {
  4. int num=1;
  5. num=1;
  6. printf("I am a simple computer.\n");
  7. printf("My favorite number is %d because it is first.\n",num);
  8. return 0;
  9. }

1:改行告诉编译器包含文件stdio.h中的全部信息。
2.圆括号表明main()是一个函数的名字,int表示函数返回一个整数,void表示函数不接受任何参数。
3.函数体的开始。
4.声明语句。
5.赋值语句。
6.函数调用语句,并把光标移到下一行的开始。
7.使用printf()把num的值内嵌在用引号引起来的词组中进行输出。
8.返回语句。
9.函数结束。

2.2实例说明

一、#icnlude指示和头文件
#include<stdio.h>相当于您在文件中该行所在的位置键入了文件stdio.h的完整内容。实际上它是一种剪切和粘贴操作,方便多个程序间共享公用的信息。
#include语句是C的预处理指令。预处理:编译前对源代码做一些准备工作。#符号表明这一行是在编译器接手之前由C预处理器处理的语句。
在C世界中,人们称出现在文件顶部的信息集合为头。函数的实际代码并不在头文件中,而是在库函数中。头文件指引编译器把您的程序正确地组合在一起。

二、main()函数
一个C程序总是从被称为main()的函数开始执行。()指明main()是一个函数,int表明返回类型,返回给操作系统。圆括号包括传递给函数的信息。

三、注释
包含在/* */之间的部分是程序注释,C语言的注释的一个好处就是可以被放在任何的地方,一个较长的注释甚至可以分为多行。
C99新增的一种注释写法,//这种注释必须被限制在一行内。

四、花括号,程序体和代码块
花括号划定了函数的界限。

五、声明
声明语句为变量指定一个名字并指明该变量中存储的数据类型。
分号是语句的一部分,不是两句之间的间隔符。关键字是用来表达语言的单词,您不能将它们用于其它的目的。在C语言中,所有变量都必须在使用之前定义。
C语言命名规则:小写字母,大写字母,数字和下划线_。第一个字符必须是字母或者下划线。
OS和C库通常以一个或两个下划线开始的名字,因此避免这样的命名。
C语言的名字是区分大小写的。

声明变量的四点好处

  • 将所有变量放在一起,可以让读者更容易掌握程序的内容。
    • 编写程序之前,考虑一下需要声明的变量会促使您做一些计划工作。
      • 可以帮助避免程序中出现一类很难发现的细微错误。
        • 不声明,C语言将无法执行。

六、赋值
语句赋值的顺序是从右到左,该语句也用分号结束。

七、printf()函数
程序运行到这一行时,控制权将转给该函数。当函数完成了它所要做的工作,控制权将返回给原来的函数。
\n是一个转义符,转义字符通常用于代表难于表达的或是无法键入的字符
%d是一个占位符,其作用是指出输出num值的位置。%告诉程序在这个位置输出,d告诉程序将输出一个十进制整数变量。

八、Return语句
return语句是程序的最后一个语句,返回函数所指定类型的值。

 

2.3一个简单程序的结构

程序由一个或多个函数组成,其中必须有main()函数。函数的描述由函数头和函数体组成,函数头包括预处理语句和函数名。函数头包括预处理语句和函数名,函数体位于花括号中并由一系列语句组成,每个语句以一个分号结束。

2.4使程序可读的技巧

选择有意义的变量名和使用注释,使用空行分隔一个函数的概念上的多个部分。

2.5多个函数

#include<stdio.h>
void butler(void);
int main(void)
{
butler();
return 0;
}
void butler(void)
{
printf("You rang,sir?\n");
}

butler()函数第一次出现在原型中,C90标准添加了原型,原型是一种声明的形式,用于告诉编译器您正在用一个特殊的函数。它也指明了函数的属性。
butler()函数的执行时间由main()函数调用它的位置决定,而不是由其在文件中定义的位置决定的。

2.6调试

编译器一个常见毛病是发现的错误位置比真正的错误要滞后一行。

2.7关键字和保留标识符

关键字是C语言的词汇,关键字不能用作标识符,否则会作为语法错误。

posted on 2013-05-24 22:07  颓废的悠然  阅读(343)  评论(2编辑  收藏  举报

导航