关于C语言基础认知

为什么会出现语言?

因为需要交流.而在哥看来,交流的根本就是为了解决问题.

无论是汇编语言,C语言或是其他的程序语言,它们也是如此.为了解决人类与计算机交互产生的一种语言.如今的计算机遍布全球,除了人和人的相互交流之外,我们必须和计算机交流,让其识别我们的指令,满足所要的需求.

每种语言都有独特的语法和规则,而交流的双方则必须遵循此语法与规则才可以相互交流.

程序和指令

程序语言在经过编译器翻译后都会生产对应的一条或多头指令,每条指令则对应CPU特定的动作.

  • 指令是对计算机进行程序控制的最小单位.
  • 所有的指令的集合称为计算机的指令系统.
  • 程序是为完成一项特定任务而用某种语言编写的一组指令序列.

C语言的简洁

C语言仅有32个关键字,9种控制语句,34种运算符,却能实现无数的功能.
32个关键字:

数据类型关键字(12个):

char, double, enum, float, int, long, short, signed, union, unsigned, void

控制语句关键词(12个):

if, else, switch, case, default, for, do, while, break, continue, goto, return

存储类关键词(5个):

auto, extern, register, static, const

其他关键词(3个):

sizeof, typedef, volatile

9中控制语句:

if() {} else {}
for() {}
while()
do{}while(){}
continue
break
switch
goto
return

32中运算符:

算术运算符: +, -, *, /, %, ++, —
关系运算符: <, <=, ==, >, >=, !=
逻辑运算符: !, &&, ||
赋值运算符: =
条件运算符: ?:
逗号运算符: ,
指针运算符: *, &
分量运算符: ., ->
下标运算符: []
括号优先级: ()
位运算符: <<, >>, ~, |, ^, &
求字节数: sizeof()
类型转换: (type)

数据类型

基本类型:
– 整形: int, short, long
– 字符型: char
– 浮点型(也称实型): float, double

构造类型:
– 数组: type[]
– 结构体: struct
– 联合体: union
– 枚举体: enum

指针类型:
– (type)*, (type)**, etc..

常量

常量的定义:
– 在程序运行过程中,其值不能被改变的量.
– 常量一般出现在表达式或赋值语句中.

如:0, 1, 0.1, 123, -20, -3.14159, 'a','asdf'

变量

变量的定义:
– 在程序运行过程中,其值可以改变.
– 变量在使用前必须先定义,定义变量前必须有相应的数据类型.

变量的特性:
– 变量在编译时需为其分配相应的内存空间.
– 通过变量名字或地址即可访问其相应内存.

变量的命名规则:
– 标识符不能是关键字.
– 标识符只能由字母/数字/下划线组成.
– 第一个字符必须为字母或下划线.
– 标识符中字母区分大小写.

变量的声明和定义的区别:
– 声明变量不需要建立存储空间,如:extern int var;
– 定义变量需要建立存储空间,如:int var;

一般的情况下,把建立存储空间的声明称之为“定义”,而把不需要建立存储空间的声明称之为“声明”.