第一个C语言程序。
打印hello world到屏幕。
#include <stdio.h> /*打印hello world*/ main(){ printf("hello,world\n"); return 0; } ~
组成
一个C语言程序,无论其大小如何,都是由函数和变量组成的。
函数中包含一些语句,以指定所要执行的计算操作。
变量用于存储计算过程中使用的值。
#预处理
#include <stdio.h>
用于告诉编译器在本程序中包含标准输入/输出库的信息。
printf函数是该库中的函数。
在词法转换中,执行以字符#开头的行中的指令,并进行宏定义和宏扩展。
main函数
每个程序都从main函数的起点开始执行,这意味着每个程序都必须在某个位置包含一个main函数。
main函数的调用者是程序的执行环境。
main函数通常会调用其他函数来帮助完成某些工作,被调用的函数可以是自己编写的,也可以来自函数库。
返回值为0,表示正常终止。
返回值非0,表示出现异常情况或出错结束条件。
注释
包含在/* 与 */之间的字符序列将被编译器忽略。
程序中允许出现空格,制表符和换行符之处都可以使用注释。
注释不能嵌套。(即不能在注释中再包含注释)
记号
C语言中共6类记号:标识符,关键字,常量,字符串字面值(字符串常量),运算符,其他分隔符。
空格,制表符,换行符,换页符(统称为空白符)在程序中仅用来分隔记号,因此将被忽略。
关键字
被用于特定用途的标识符,不能用于其他用途。
auto | double | int | struct |
break | else | long | switch |
case | enum | refister | typedef |
char | extern | return | union |
const | float | short | unsigned |
continue | for | sifgned | void |
default | goto | sizeof | volatile |
do | if | static | while |
转义字符
转义字符都是以 \ 开头,用来表示无法输入的字符或不可见的字符,一般为控制作用。也有一些是由于冲突,被迫转义。
如:\n就是一个转义字符,表示换行符,是换行的标志。
注意:\n代表的是一个字符,换行符,在ASCII字符集中的值为10。
当程序处理\n时就是把它当作一个值为10的char类型。
\a | 响铃符 |
\b | 回退符 |
\f |
换页符 |
\n | 换行符 |
\r | 回车符 |
\t | 横向制表符 |
\v | 纵向制表符 |
\0 | 空字符(null),值为0的字符 |
\\ | 反斜杠(由于\被用作转义字符标志,冲突) |
\? | 问号(冲突) |
\' | 单引号(由于'被用于标识字符类型,冲突) |
\" | 双引号(由于"被用于标识字符串类型,冲突) |
\000 | 八进制数,000代表1~3个八进制数字(0…7),用数字指代字符集中对应的字符。 |
\xhh | 十六进制数,hh是1~2个十六进制数字(0…9,a…f,A…F),用数字指代字符集中对应的字符。 |