- 博客(5)
- 收藏
- 关注
原创 两个栈实现一个队列
两个栈实现一个队列 - 栈 : 先进后出 - 队列:先进先出 实现方法:一个栈实现队列的进,一个栈实现队列的出 栈的操作方法: typedef struct stack { int *data; int top; }stack; void InitStack(stack *st) { if(st==NULL) exit(0); st->data=(int *)malloc(sizeof(int)*INITSIZE); st->top=0; } int FullS
2021-03-30 17:10:41
42
原创 直接插入排序
#include<stdlib.h> #include<stdio.h> #include<string.h> void InsertHeap(int arr[],int len) { for(int i=1;i<len;++i) { int j=i-1; int tmp=arr[i]; while( j>=0 && arr[tmp]<arr[j] ) { arr[j+1]=arr[j]; .
2021-03-25 17:13:39
58
原创 动态库与静态库
库文件 库文件的概念: 库有两种方式: 静态库: linux:.a windows .lib 共享库(动态库):linux .so windows .dll 静态库的生成 例如:add.c sub.c mux.c div.c 将以上四个源文件先编译成对应的中间文件 gcc -c add.c sub.c mux.c div.c 使用命令: ar crv libxxxx.a add.o sub.o mux.o div.o -->libxxx.a 静
2021-03-21 15:55:26
53
原创 Linux编译过程
编译连接过程中每个阶段完成的事情: 预编译: 替换注释 宏替换 处理预处理指令 编译: 词法语法的解析 代码优化 汇总符号(代码中只有数据和函数会生成符号) .data 初始化不为0的数据 .bss 初始化为0的,或者未初始化的数据 普通的全局变量未初始化在COM中 汇编: 翻译成二进制,生成各个段(secation),生成符号表 中间文件的组成 EBL 连接: 合并各个段,调整段的起始位置以及大小 合并符号表,
2021-03-13 14:57:48
115
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人