存储类别
摘要:
存储类别解决的是标识符的“生命周期” 或 变量内存的开辟时间和销毁 栈变量 用 auto 声明的变量 变量内存开辟时间:栈变量是在 当执行到定义语句时,开辟内存 变量内存销毁时间:所在作用域结束时销毁 注意:全局变量不能auto修饰,局部可以 全局变量 用 static(静态的) 声明的变量 变量内
作用域
摘要:
分类 文件作用域 函数作用域 语句块作用域 结构体作用域 int a = 10; //文件作用域 全局变量 int fun(int b); //函数声明:扩展函数作用域 int main(void){ int a = 10; //函数作用域 局部变量 { int j = 10; //语句块作用域 局
函数递归调用
摘要:
概念 C语言中,函数可以递归调用,即:可以直接或间接地调用自己 int fac(int n){ if(n < 1){ return -1; }else if(n == 1){ return 1; }else{ return n*fac(n-1); } } //待理解 int fac(int n){
typedef的使用 - 结构体
摘要:
注意 它不是用来创造类型,而是给已有类型取一个别名 语法 typedef 已有类型 别名; 例: typedef int TYPE TYPE a 等价于 int a 在 typedef 与 结构体 的使用 typedef struct student { int num; int age; }STU
结构体
摘要:
概念 结构体是一种可以由我们自行定义的数据类型 struct student { int num; int score; float avg; } struct student Tom; //结构体变量 struct student Class[50]; //结构体数组 结构体定义 结构体关键字:s
标识符
摘要:
变量名、数组名、函数名等统称为标识符 #标识符分为:关键字、预定义标识符、自定义标识符 ##关键字 如int等,系统预留,占用的 ##预定义标识符 如printf,系统提前定义好的 ##自定义标识符 如 char a; 中的a,由我们自定义的
原码、反码与补码
摘要:
#数据在计算机中都是以补码的形式存在的 原码 反码 补码 2 0000 0010 0000 0010 -2 1111 1101 1111 1110 正数的反码补码都是一样的! 符号位:最左边的最高位,1表示负数,0表示正数 负数的反码:在原码的基础上“符号位不变,数值位取放” 负数的补码:在反码的基
进制转换 - 8241法
摘要:
#进制转换法(8421法) 1kb = 1024byte 1byte = 8bit 原理: 27 = 128 26 = 64 25 = 32 24 = 16 23 = 8 22 = 4 21 = 2 20 = 1 十进制 互转 二进制 初始方法: 22 二转十 10110 = 1×24 + 0×23