static修饰全局变量 使得这个全局变量只能在自己所在的源文件(.c)内部可以使用修饰函数也是如此
其他源文件不能使用!
static修饰局部变量可具有全局变量功能
在while循环中,break用于永久的终止循环
在while的循环中,continue的作用是跳过本次循环continue后面的代码
for循环:
1.不可在for循环体内修改循环变量,防止for循环失去控制。
2.建议for语句的循环控制变量的取值采用“前闭后开区间”写法
for语句判断部分省略会导致恒为真导致死循环
for(初始化部分;判断部分;调整部分;)
C关键字介绍
C语言一共提供了44个关键字,分别如下:
auto,break,case,char,const,continue,default,do,double,else,enum,extern,float,for,goto,if,int,inline,long,register,restrict,return,short,signed,sizeof,static,struct,switch,typedef,unsigned,union,void,volatile,while,_Bool,_Complex,_Imaginary,_Alignas,_Alignof,_Atomic,_Static_assert,_Noreturn,_Thread_local,_Generic
- auto:声明自动变量。
- break:跳出当前循环。
- case:开关语句分支。
- char:声明字符型变量或函数返回值类型。
- const:声明只读变量。
- continue:结束当前循环,开始下一轮循环。
- default:开关语句中的“默认”分支。
- do:循环语句的循环体。
- double:声明双精度浮点型变量或函数返回值类型。
- else:条件语句否定分支(与if连用)。
- enum:声明枚举类型。
- extern:声明变量或函数是在其它文件或本文件的其他位置定义。
- float:声明浮点型变量或函数返回值类型。
- for:一种循环语句。
- goto:无条件跳转语句。
- if:条件语句。
- int:声明整型变量或函数。
- inline:用于定义内联函数。
- long:声明长整型变量或函数返回值类型。
- register:声明寄存器变量。
- restrict:只能用于指针类型, 用于指定指针所指向的内存区域是唯一的。
- return:子程序返回语句(可以带参数,也可不带参数)。
- short:声明短整型变量或函数。
- signed:声明有符号类型变量或函数。
- sizeof:计算数据类型或变量长度(即所占字节数)。
- static:声明静态变量。
- struct:声明结构体类型。
- switch:用于开关语句。
- typedef:用以给数据类型取别名。
- unsigned:声明无符号类型变量或函数。
- union:声明共用体类型。
- void:声明函数无返回值或无参数,声明无类型指针。
- volatile:说明变量在程序执行中可被隐含地改变。
- while:循环语句的循环条件
最小公倍数可由两个数的乘积除以最大公约数求得
两个字符串比较 不能使用==,应该使用strcmp
返回值大于零表示a>b;小于零表示a<b;返回值等于0表示a=b
switch语句无顺序可言
shutdown -s -t 执行关机命令 -t表示倒计时
shutdown -a停止关机命令
goto语句只能在一个函数内跳动不能跨函数且一般建议在函数嵌套需要挑出时使用
函数返回类型的地方写出:void 表示这个函数不返回任何值也不需要返回
写递归代码时:
不能死递归,都有跳出条件,每次递归逼近跳出条件
递归层次不能太深
%hh的作用是限定输出格式为8位,即一个字节;
%h的作用是限定输出格式为16位,即两个字节;
%l的作用是限定输出格式为32位,即四个字节;
%ll的作用是限定输出格式为64位,即八个字节;
%L的作用是输出实数,支持long double类型;
可以和进制输出格式符(%d/%u/%o/%x)搭配使用。
数组名是数组首元素的地址 但是有两个例外
1.sizeof(数组名)-数组名表示整个数组-计算的是整个数组的大小单位是字节
2.&数组名-数组名表示整个数组-取出的是整个数组的地址
&按位与即二进制位有一0则为0 两1才为1
|按位或即二进制位有1为1 两0才为0
^按位异或即相同为0 相异为1
三符号操作数必须为整数