- 博客(10)
- 收藏
- 关注
原创 数据结构之栈和队列
一、栈 1、概念:这里说的栈指的是数据结构里面的栈!和内存分配里面的“栈空间”区别; 2、模型:手枪里面的弹夹! 弹夹:底部是封闭的,顶部是可以装载子弹的!打枪的顺序,谁先装进去谁最后出来! 数据结构里面的栈和弹夹是非常像的:“后进先出”,或者"先进后出"! 3、线性表: 数组 4、操作: enum stack { STACK_EMPTY,
2017-08-08 19:43:01 239
原创 数据结构之单链表与双链表
一、单链表中的循环链表: 目前我们的链表最后一个结点的pNext指向的是NULL;循环链表中的最后一个结点的pNext指向的是头结点; 循环链表和不是循环链表的区别:判断条件不一样! p->pNext == NULL; p->pNext == pHeader; 二、单链表和数组的区别: 单链表的优势: 1、可以解决数组大小一旦定义之后很难改变的缺点; 2、链表中的各个
2017-08-08 18:31:32 570
原创 数据结构之链表
一、为什么要引入链表? 1、数组的特点: ①数据类型一样的,为了解决数组的数据类型是一样的缺点,引入了结构体! ②分布的空间是连续的; ③数组的大小一但确定就很难改变,重新定义一个char a[20],然后将char a[10]里面的数据复制到a[20];(C++,Java里面是有可变数组的) 2、链表的概念: 可以这么说:链表一个可以变化的数组,可以由一个结点连接另一个结点,然后
2017-08-08 18:10:09 182
原创 C语言指针
一、指针 1.为什么使用指针 目的:对地址进行操作(java和c#看不到指针,指针给包装起来了) 2.指针的本质 指针就是一个变量,但是跟普通的变量又有所区别,指针变量保存的是另外一个变量的地址,而普通变量保存的就是具体的值。 3.既然指针是变量,也具有变量的一些特性。 ①类型 ②定义 ③初始化 ④赋值 ⑤其它一些运算操作 4.定义 格式:类型名 *指针变量的名字
2017-08-08 15:22:48 193
原创 C语言内存管理
一、内存管理 C语言中程序和数据都是加载到内存中运行的,加载到的是物理内存,应用程序显示虚拟内存。所以内存管理很重要,OS管理内存,我们需要了解我们所写程序中定义的局部变量、全局变量、static变量、函数等存储到了哪里? 二、内存分为哪些? 1、栈空间:局部变量(a,b)、函数的形参(fun(int a,int b))、auto变量 特点: ①OS自动分配和释放,程序员不用管理 ②重
2017-08-08 14:43:40 187
原创 C语言数组
1.为什么要学习数组? 总结:有时候需要定义很多变量,如果用一般的定义方式显得麻烦,并且容易出错,所以就引用数组的这个概念。 2、怎么定义数组? 比如: int nun[4]; //数据类型 数组名[常量]; 常量:5 3+2; int add(int n) { int num[n]; //不符合C语言标准,建议大家不要这么使用; } 3、怎么使用数组? 定义
2017-08-08 14:28:29 226
原创 C语言编译预处理
1.宏定义 不带参数 #define MAX 100 带参数 #define S(a) (a)*(a) //宏函数 带参数的宏定义最好加上(); 带参数的宏定义称宏函数。 ★宏函数和自定义函数的区别: ①宏函数在预处理进行替换,自定函数在编译期间进行处理; ②宏函数没有类型,自定义函数有类型; ③宏函数只进行简单的替换效率高,自定义函数调用
2017-08-08 12:01:13 182
原创 C语言基础
打印:helloworld! #include int main() { printf("Hello World!\n"); //打印:helloworld return 0; } (1)main是函数的名字,任何一段程序有且只有一个main函数,它表示程序的入口,执行程序都是从main开始执行的!我们写程序的时候也是先 写main函数,int 是函数的数据类型,表
2017-08-08 10:48:43 168
原创 inux下的gcc和gdb 以及库的使用
linux下的gcc和gdb 以及库的实用一、gcc 的编译过程:预处理、编译、汇编、链接 1. 无选项编译链接 用法:#gcc test.c 作用:将test.c预处理、汇编、编译并链接形成可执行文件。这里未指定输出文件,默认输出为a.out。 2. 选项 -o 用法:#gcc test.c -o test 作用:将test.c预处理、汇编、编译并链接形成可执行文件test。-o选项用
2017-08-08 10:43:27 290
原创 Linux基础知识
一、文件 - 一般文件 d 目录文件 l 链接文件 p 管道文件 s 套接字(socket) 二、常用基本命令 ls 显示文件(-al显示隐藏文件) cat 查看文件内容 rm 删除(-f 强制删除 、-r 循环删除) cp 复
2017-08-08 07:45:18 213
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人