自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 内存池与typedef

内存池与typedef内存池typedef关键字与结构体联用进阶typedef 内存池 其实就是让程序额外维护一个缓存区域。 通常使用单链表来维护一个简单的内存池。 typedef关键字 是C语言最重要的关键字之一 可以给变量起别名; 相比起宏定义的直接替换,typedef是对类型的封装 typedef int INTEGER, *PRTRINT;//指针别名的话是在后面加 int main(void) { INTEGER a = 510; PRTRINT b,c;//这个时候b,c都为int

2021-03-21 20:34:49 81

原创 单链表

单链表

2021-03-19 20:47:43 65

原创 结构体

结构体结构体 结构体 struct 结构体名称 { 结构体成员1; 结构体成员2; ...... };

2021-03-18 20:27:00 58

原创 高级宏定义

高级宏定义不带参数的宏定义 就算宏定义在复杂,它也只是做替换! 不带参数的宏定义 宏的名字通常全部由大写字母组成,无需在末尾加分号 宏定义的替换是在编译之前的。 作用域:从定义的位置开始到整个程序结束,可以用#undef来终止宏定义的作用域 宏定义允许嵌套 ...

2021-03-17 11:14:46 194

原创 递归与动态内存

递归与动态内存递归快速排序动态内存管理mallocfree内存泄漏初始化内存空间callocreallocC语言的内存布局规律堆栈堆和栈的区别 递归 递归必须要有结束条件,否则程序将崩溃! 实现递归要满足两个基本条件: 调用函数本身 设置了正确的结束条件 快速排序 基本思想:通过一趟排序将待排序数据分割成独立的两部分,其中一部分的所有元素均比另一部分的元素小,然后分别对这两部分继续进行排序,重复上述步骤直到排序完成。 动态内存管理 malloc 函数原型: -void *malloc(size_t

2021-03-11 21:31:40 247

原创 作用域与链接属性

作用域与链接属性作用域定义和声明概念存储类型自动变量寄存器变量静态局部变量typedef 作用域 C语言编译器可以确认4种不同类型的作用域: -代码块作用域 -文件作用域 -原型作用域 -函数作用域 定义和声明 概念 定义: 当一个变量被定义的时候,编译器为变量申请内存空间并填充一些值。 声明: 当一个变量被声明的时候,编译器就知道该变量被定义在其他地方。 声明是通知编译器该变量名及相关的类型已存在,不需要在为此申请内存空间。 局部变量既是定义又是声明。 存储类型 存储类型其实是指存储变量

2021-03-09 11:42:42 94

原创 函数与指针

函数函数定义可变参数指针函数函数指针 函数定义 类型名 函数名(参数列表) { 函数体 } 注意有些参数的作用域只能在该函数内作用, 例如:传值和传址的区别,就能体现变量的作用域 可变参数 #include <stdarg.h>//头文件 int sum(int n,...);//函数的声明 int sum() { va_list vap;//存放参数的链表 va_start(vap,n);//n就是指有几个参数 va_arg(vap,int);//按顺序取出参数对应的值,一般与循环结构联用 v

2021-03-09 10:04:59 72

原创 数组与指针

数组数组的定义数组的初始化 数组的定义 类型 数组名[元素个数] 数组的初始化 int a[3] = {1,2,3}; int a[] = {1,2,3}; int a[3] = {[0]=1, [1]=2, [2]=3};

2021-03-07 20:20:45 170 4

原创 运算符

运算符算术运算符类型转换 算术运算符 注意 在 求余运算符 中,运算符两边的 操作数 只能是整数,不然会出错! 目是什么意思呢? 在运算时,受影响的操作数的个数决定几目运算符; 类型转换 低精度会转向高精度进行运算 例如:1+2.0==1.0+2.0 但是2.0不会转换为2,因为会导致精度丢失,会打印出一个错误的数字 ...

2021-03-05 20:42:10 56

原创 C语言入门学习

C语言入门学习基本了解 基本了解 C语言是编译型语言 执行过程是C语言——汇编语言——机器语言——CPU执行 Java是解释型语言 执行过程是Java——字节码——解释器——CPU执行 优势: 灵活度高、效率高、可移植性高 ...

2021-02-28 21:11:12 71

原创 浅谈数据结构与算法

数据结构与算法的了解概念逻辑结构物理结构谈谈算法算法初体验算法设计的要求 概念 程序设计 = 数据结构 + 算法 数据结构分为逻辑结构和物理结构。 关注和讨论的问题: 逻辑结构:是指数据对象中数据元素之间的相互关系。 而物理结构则次之,它是指数据的逻辑结构在计算机中的存储形式 逻辑结构 集合结构 集合结构中的数据元素除了同属于一个集合外,它们之间没有其他不三不四的关系。 线性结构 线性结构中的数据元素之间是一对一的关系。 树形结构 树形结构中的数据元素之间存在一种一对多的层次关系。 图形结构

2021-02-01 00:10:42 145

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除