
C
eastRiseWm
耍也是很累的
展开
-
C进阶:10.结构体赋值、套指针、深浅拷贝、大小
14.结构体中的高级话题知识点:1. 结构体赋值操作2. 结构体套指针3. 深拷贝和浅拷贝4. 结构体的偏移量强化知识点:1. 结构体赋值操作结构体赋值相当于是(内容)赋值操作 Student stu1 = {"Eastrise",25}; Student stu2; // strcpy(stu2.name,stu1.name); // stu2.age = stu1.age; stu2 = stu1;// = 赋值操作,java 中 stu2 对象就会变原创 2020-10-27 17:57:54 · 236 阅读 · 2 评论 -
C进阶:09.二级指针和多级指针
13.二级指针和多级指针知识点:1. 指针使用的注意事项2. const 关键字3. 二级指针的内存模式3.1 指针数组3.2 二维数组的几种定义方式4. 多级指针知识点:1. 指针使用的注意事项不要轻易改变指针的位置char* p = NULL; strcpy(p,"string"); // 报错,无效,char p[num]这样使用才有效 p="string"; // 可以 第一个是把string赋值给p,第二个是p指向“string”的首地址。2. const 关键字原创 2020-10-27 17:20:02 · 160 阅读 · 0 评论 -
C进阶:08.指针赋值、野指针、项目开发模型强化
12.项目开发模型强化知识点:1. 内存四驱模型2. 指针间接赋值的意义3. 野指针和 null 地址4. 字符串强化5. 项目开发模型强化知识点:1. 内存四驱模型void change1(int number){ // 不能修改 number = 300; printf("%p\n",&number);}int main(){ int a = 100; // 修改 a 的值 a = 200; change1(a); // a变量的值原创 2020-10-26 17:51:03 · 246 阅读 · 0 评论 -
C进阶:07.内存四驱模型
11.内存四驱模型知识点:1. 数组作为参数传递时获取不到长度的问题!!2. 数据类型剖析3. 变量的本质4. 内存四驱模型4.1 程序运行的流程:4.2 四驱模型5. 栈的开口方向6. 指针强化知识点:1. 数组作为参数传递时获取不到长度的问题!!原因:数组作为参数传递,会退化成为一个指针,传递的是首地址 (高效)2. 数据类型剖析数据类型的本质:一块连续大小的内存空间数据类型的别名:int32_t void指针数据类型:void* 代表任意的数据类型的指针3. 变量的本质原创 2020-10-26 17:20:42 · 340 阅读 · 0 评论 -
C:06.文件操作
06.文件操作知识点:1.文件打开,读取,写入1.1.读取:1.2.写入:2.文件复制,当做二进制文件来操作3.获取文件大小4.文件加密、解密(该方法文件适合图片,如果文件中有中文就不适合)4.1.加密:4.2.解密:5.字符串秘钥对文件进行加密、解密5.1.字符串秘钥对文件加密:5.2.字符串秘钥对文件解密:6. 文件切割、合并6.1.文件切割:6.2.文件合并:知识点:1.文件打开,读取,写入siz_t fread(void *buffer,size_t size,size_t count, F原创 2020-10-26 13:36:41 · 165 阅读 · 0 评论 -
C:05.结构体联合体和枚举以及大小计算
05.结构体联合体和枚举知识点:1.结构体的定义和使用1.1.结构体的定义1.2.结构体的使用2.结构体指针和动态内存开辟2.1.**通过指针取操作数据**2.2.**动态开辟结构体内存**3.结构体大小计算(字节对齐)4.结构体和结构体指针取别名5.联合体的定义和使用6. 联合体大小计算7.枚举的定义和使用知识点:1.结构体的定义和使用1.1.结构体的定义// 第一种方式struct Worker{ // 定义一个结构体, 相当于 java 的 class struct Worker worke原创 2020-10-26 10:55:56 · 454 阅读 · 1 评论 -
C:04.字符串常见操作和指针练习
04.字符串常见操作和指针练习知识点:1.字符串定义2.字符串长度获取3.字符串的转换4.字符串的比较5.字符串查找,包含6.字符串复制和拼接7.手写字符串截取8.手写字符串小写转换9. 手写字符串的替换知识点:1.字符串定义字符串以 \0 结尾,动态开辟内存的时候也需要多考虑一位定义方式有两种:char str[] = {'E','a','s','t','r','i','s','e','\0'}; : 可以修改const char *str1 = "Eastrise";:不能修改,字符串常量原创 2020-10-23 17:37:57 · 194 阅读 · 0 评论 -
C:03.随机数和内存开辟
03.随机数和内存开辟知识点:1.生成随机数2.重点,内存开辟3.动态内存开辟4.改变内存空间大小知识点:1.生成随机数初始化随机发生器:srand(NULL) srand((unsigned)time(NULL))调用函数:rand()问题:srand(NULL)初始化发生器时每次随机数都是一样的。解决: 初始化随机发生器时调用**srand((unsigned)time(NULL))**,每次发生器都是当前时间,所以随机数不会再一样了。int main(){ // 可原创 2020-10-23 15:24:16 · 406 阅读 · 2 评论 -
C:02.指针运算和函数指针
02.指针运算和函数指针知识点:1.二级指针和多级指针2.数组与数组指针2.1. 采用指针遍历数据2.2. 采用指针循环为数组赋值2.3.数组指针的几种操作方式3.函数指针知识点:1.二级指针和多级指针[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jCdS22I6-1603432831479)(…/pic/02二级指针.png)]二级指针:对一级指针取地址n级指针:对(n-1)指针取对峙int main(){ int num = 12; // in原创 2020-10-23 14:01:33 · 221 阅读 · 0 评论