C语言随记(一)
main函数:
int main(int argc, const char * argv[]) {} 程序的入口函数,有且仅有一个。
main函数的参数介绍
- int argc
该参数必须是整型变量,参数argc中保存了参数的个数。 - const char * argv[]
该参数必须是一个指向组数的数组指针。argv[]中argc[0]为自身运行目录路径和程序名,argc[1]指向第一个参数,argc[2]指向第二个参数…
main函数为什么会有这两个参数?
- main函数是c语言的入口函数,如果需要给main函数传递参数,只能从系统传入。
- 给main函数传递参数的时候,无法确定给main函数传递的参数的个数。如果用一个参数对应一个形参的写法,那么main函数的形参个数就无法确定。因此C语言将传入main函数的参数写入一个数组里,直接将这个参数数组作为实参传给main函数,所以需要
const char * argv[]
参数。 - 在给一个函数传入数组的时候,一般需要同时传入数组的元素个数,以便在函数内部遍历数组,所以需要第一个
int argc
参数。
数据类型
1、基本类型
数值类型
整型
- 短整型 (short)
- 长整型 (long)
- 整型 (int)
浮点型
- 单精度型 (float)
- 双精度型 (double)
字符类型 (char)
2、构造类型
- 数组
- 结构体
- 共用体
- 枚举类型
3、指针类型
4、空类型
5、定义类型
常量和变量
对于基本数据类型,按其取值是否可以改变分为常量和变量。
在程序运行过程中,其值不发生改变的量称为常量。
在程序运行过程中,其值可变的量称为变量。
Tip:在程序中,常量是可以不经说明而直接引用的;而变量则必须先定义,后使用。
C运算符
算术运算符——用于各类数值运算
包括:加(+)、减(-)、乘(*)、除(/)、求余(或模运算 %)、自增(++)、自减(–)
关系运算符——用于比较运算
包括:大于(>)、小于(<)、等于(==)、大于等于(>=)、小于等于(<=)、不等于(!=)
逻辑运算符——用于逻辑运算
包括:与(&&)、或(||)、非(!)
位操作运算符——参与运算的量,按二进制位进行运算
包括:位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)
赋值运算符——用于赋值运算
包括:简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)、复合位运算赋值(&=,|=,^=,>>=,<<=)
条件运算符——三目运算符,用于条件求值
条件表达式 ? 语句1 :语句2
逗号运算符——用于把若干个表达式组合成一个表达式,整个表达式的值为最后一个表达式的值
语句1,语句2,语句3…
指针运算符——用于取内容和取地址
取内容:*
取地址:&
求字节数运算符——用于计算数据类型所占的字节数(sizeof)
特殊运算符——括号()、下标[]、成员(->,.)