示例代码1:pun.c
/*
* Name: pun.c
* Author: K. N. King, Rys
*/
# include /* header: */
int main (void) /*int: 函数将返回一个整数值; void: 函数没有参数*/
{
printf("Hello kitty.\n"); /*函数调用语句*/
return 0; /*return语句*/
}
cc -o pun pun.c /* cc是传统的unix编译器*/
gcc -o pun pun.c // GNU C Compiler, GNU Compiler Collection
首先程序被递交给预处理器(preprocessor),后者执行以#开头的指令。修改后的程序紧接着进入编译器(compiler),编译器会把程序翻译成机器指令(即目标代码)。最后,链接器(linker) 把目标代码和附加代码整合在一起,产生完全可执行的程序。
示例代码2:dweight.c
/* Computer dimensional weight.
* King, Rys
*/
# include
# define INCH_PER_POUND 166 // 用宏定义的特性给常量命名
int main(void)
{
int height, volumn, weight; // 多个相同类型可以合并声明
int length=12;
int width=10;
printf("Enter height of box: ");
scanf("%d", &height); // 读一个整数,存入变量height
printf("Enter length of box: ");
scanf("%d", &length);
volumn = lenth * width * height;
weight = (volumn + INCH_PER_POUND - 1) / INCH_PER_POUND;
printf("Volumn: %d\n", volumn);
return 0;
}
变量:存放临时数据的存储单元。
类型(必须):变量所存储数据的种类。
声明(使用前必须):指定变量的类型和名字,如int a
。
赋值:变量获取值。
未初始化:没有默认值并且尚未在程序中被赋值。
初始化式:在变量声明中加入初始值,如int a=1
。
标识符可以含有字母、数字和下划线,但必须以字母或下划线开头。
C语言区分大小写。
命名风格:下划线、驼峰。
关键字:
auto,
break,
case, char, const, continue,
default, do, double,
else, enum, extern,
float, for,
goto,
if, inline, int,
long,
register, restrict, return,
short, signed, sizeof, static, struct, switch,
typedef,
union, unsigned,
void, volatile,
while,
_Bool, _Complex, _Imaginary
C语言允许在记号之间插入任意数量的间隔,间隔可以是空格符、制表符和换行符。因此:
1)语句可以分开放到任意多行;
2)运算符前后添加空格以便于区分;
3)缩进便于区分程序嵌套;
4)空行可以把程序分成逻辑单元以便于辨别程序结构。