目录
一、简单的C程序实例
#include <stdio.h> //包含头文件
int main()
{
int a = 1;//变量声明
int b = 1;
int c = a + b;
printf("c = %d\n",c);//调用printf函数打印
printf("hello world\n");
return 0;
}
这是一个简单的C程序,实现的功能是在屏幕上打印两行内容,程序执行结果如图。
在这个简单的C程序中可以看到一些C语言的基本语法规则。
printf()是C语言的库函数,其被包括在stdio.h【标准输入输出】这个头文件中,以.h为后缀的文件都被称为头文件。如果想使用C语言的库函数,就要包含其所在库的头文件。#include是预处理指令, #include<stdio.h> 就可以告诉编译器,把stdio.h里的内容包括到这个C程序之中,就可以在当前程序中使用其包含的所有函数。
二、简单程序的结构
程序由一个或多个函数组成,必须有 main( ) 函数,main( )函数是程序开始执行的入口。
所有的函数都由函数头和函数体组成,函数头包括函数名、传入该函数的数据类型和函数的返回类型,通过函数名后的圆括号 ( ) 可识别出函数,圆括号里可能为空,可能有参数。函数体要用花括号 { } 括起来,由一系列语句、声明组成。
三、一些不可忽略的编程技巧
1.变量命名规则
可以用小写字母、大写字母、数字和下划线 _ 来命名。而且,名称的第1个字符必须是字母或下划线,不能是数字。给变量命名时要尽量使用有意义的变量名或标识符,如果变量名无法清楚地表达自身的用途,可在注释中进一步说明。这是一种良好的编程习惯和编程技巧。
C语言的语法规则区分大小写,即把一个字母的大写和小写视为两个不同的字符。因此,stars和Stars、 STARS 都不同,它们可以代表三个不同的变量名。
2.写注释
两种注释风格:
// | 单行注释。这个比较通用,进行注释和解注释时候只会影响单行。 |
/**/ | 多行注释。进行注释和解注释时候会影响多行。有时会误操作。 |
四、常见的两种错误
1.语法错误
语法错误都会被编译器发现,并且报错。例如 { } 和 ( ) 的使用,以及中英文的符号使用等一些违背C语言的语法规则的错误。
2.语义错误
语义错误是指代码实现的效果和预期不符。编译器无法检测语义错误,因为这类错误并未违反C语言的规则。编译器无法了解你的真正意图,所以只能自己找出这些错误。
五、程序调试
当程序出现错误的时候就是出现了Bug,就需要调试程序。调试程序就是Debug的过程,编译器一般自带调试器,通过调试器可以实现程序的调试。例如VS编译器,可以有如图的调试功能。
最常用的窗口就是监视窗口和内存窗口,监视窗口可以随时监视程序执行过程中变量的值,内存窗口会显示在计算机的内存单元中此时存放的数据。通过逐语句执行或者逐过程执行然后搭配窗口数据来进行验证程序当前运行状态。在这个过程中会发现程序的Bug,找出并改正。
六、常见的关键字和保留标识符
关键字是C语言的词汇,它们对C而言比较特殊,不能用它们作为标识符、变量名。许多关键字用于指定不同的类型,如int、char。还有一些关键字(如if)用于控制程序中语句的执行顺序。
auto | else | long | typedef |
break | enum | register | union |
case | extern | return | unsigned |
char | float | short | void |
const | for | signed | volatile |
continue | goto | sizeof | while |
default | if | static | |
do | inline | struct | |
double | int | switch |
七、本章小结
编程的目的是为了解决我们生活中的问题。可以把程序看作是希望计算机如何完成任务的描述。在本章中,要理解什么是C程序,建立用C语言编程的大致框架。掌握一些基本的语法规则,例如:每一条语句以分号 ; 结尾,函数名字后面要跟圆括号 ( ) ,函数体要用花括号 { } 括起来等等。
函数表达式语句用于调用指定的已命名函数。调用函数执行完毕后,程序会返回到函数调用后面的语句继续执行。对于在这一章提到的注释、调试等都会在后面的章节加以运用。
一门语言的语法是一套规则,用于管理语言中各有效语句组合在一起的方式。语句的语义是语句要表达的意思。编译器可以检测出语法错误,但是程序里的语义错误只有在编译完之后才能从程序的行为中表现出来。检查程序是否有语义错误要跟踪程序的状态,即检查程序每执行一步后所有变量的值,进行调试,对于一名程序员来说,Debug至关重要。