- 博客(22)
- 收藏
- 关注
原创 读取目录下普通文件
读取目录下普通文件#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>#include <string.h>#include <dirent.h>#define FILE_NAME_LEN 500void read_dir(const char* file_name);int opt_file(const c
2020-07-03 20:55:03 121
原创 makefile模板:
makefile通用模板:LIB=-lpthreadTARGET = testSRC = $(wildcard *.c)OBJ = $(patsubst %.c,%.o,$(SRC))CC := gccCCFLAG = -gall:$(TARGET)$(TARGET):$(OBJ) $(CC) $(CCFLAG) $^ -o $@ $(LIB).PHONY:clean: rm -rf *.o $(TARGET)
2020-07-02 00:16:19 100
原创 完全二叉树和二叉树性质
一.完全二叉树特点:1.叶子节点只能出现在最下面2层2.层序遍历时连续的二. 二叉树性质第i层,最多有2的(i-1)次方 个节点深度为k,最多有2的k次方-1个结点叶子节点为n0,度为2 的结点为n2,则n0 = n2+1n个节点的完全二叉树,深度为log [(2,n)+1 ] 取下地板n个节点的完全二叉树,按层序编号,任一结点ia. i=1,则结点为根,若i&...
2020-03-24 13:32:38 1246 1
原创 函数库的制作和使用
一.动态库的制作和使用基本步骤:1.编写功能函数,以及头文件,并生成.o文件2.制作库函数,并将其移动到标准路径下3.编译链接第三方库第一步:hello.c#include<stdio.h>void my_printf(){ printf("hello wrold\n");}hello.h#ifndef HELLO_H#define HELLO_Hex...
2020-03-06 08:42:39 348
原创 7.归并排序
一.归并排序#include <iostream>using namespace std;#define MAX 100 //设置数组大小#define END 65535 //设置超尾元素int count; //得到比较的次数 //设置临时数组的空间大小int L[MAX / 2 + 2], R[MAX / 2 + 2]; //...
2020-03-05 15:58:17 99
原创 6.二叉树
一.二叉树遍历#include<stdio.h>typedef char data_t;typedef struct node{ data_t data; struct node* lchild,*rchild;}node_t;//前序遍历void pre_printf(node_t *root){ if(root == NULL) ...
2020-03-04 20:19:27 73
原创 4.查找
一.折半查找使用:数据有序的情况下核心:带查找的数据在左边还是右边,中间就证明找到了#include<stdio.h>int search_value(int *p,int n,int value){ int low = 0,high = n-1,mid; while( high >= low ) { mid = (low + high)/2; if(v...
2020-03-03 16:40:36 84
原创 3.约瑟夫问题,栈,队列
一.约瑟夫问题步骤:1.初始化基本量以及链表2.将链表头位置移动到开始位置3.进入循环,开始游戏关键:移动到待删位置的前一个位置,#include<stdio.h>#include<stdlib.h>typedef struct node{ int data; struct node *next;}node_t;int main(){ in...
2020-03-02 08:50:21 688
原创 2.单向链表
转载请附上:1.示例#include<stdio.h>#include<stdlib.h>typedef int data_t ;typedef struct link{ data_t data; struct link* next;}link;//按位置插入int position_insert(link* l,int pose,data_t d)...
2020-03-01 18:40:44 101
原创 1.顺序表
一.小知识算法的设计:逻辑结构算法的实现:存储结构简单介绍:二.举例#include<stdio.h>#include<stdlib.h>#define MAX 100typedef int data_t;typedef struct { data_t data[MAX]; int last;}seqlist;//创建顺序表seqlist*...
2020-03-01 12:56:21 110 1
原创 linux 线程
一.线程1.基本知识内核调度的最小单位2.流程及相关函数线程:void* fun(void *){ pthread_exit(0);}a.定义id pthread_t id;b.创建线程: pthread_create(&id,NULL,fun,NULL);c.阻塞(收尸)等待: pthead_join(id,NULL);3.举例#include<...
2020-03-01 01:18:27 100
原创 linux 消息队列 和 共享内存
一.消息队列1.基本知识存在于内核中2.基本流程及函数发送/接收:(1) 申请key值(2) 创建(打开)消息队列(3) 发送消息(创建结构体) typedef struct{long type;char buf[128];}msg_t;(1)key_t key = ftok("/",5);if( key<0 ){ perror("ftok"); re...
2020-02-29 23:53:35 358
原创 Linux 信号 与 管道
一.信号1.什么是信号软件层面对中断机制的一种模拟,是异步通信。2.接信号的函数 singal(SIGINT,SIG_DFL); //参数一:信号的种类、 //参数二:信号的处理方式3.发信号的函数kill(id,SIGINT);//参数一:进程号 //参数二:信号的种类raise(SIGINT);//只能向当前进程发信号二.管道...
2020-02-29 15:18:11 206
原创 linux 进程
一.关于进程1.什么是进程程序的一次动态执行的过程进程是程序执行和资源调度的最小单位2.程序的创建,执行与终止(1)创建:pid_t id = fork(); id<0 创建失败 id = 0 代表是子进程 id>0 代表父进程 (这个id就是子进程的id) *其中fork采用的是写时复制技术*(2)执行getpid(); 返回值为当前进程的idgetp...
2020-02-29 00:47:17 85
原创 Linux 标准io
一.缓冲区###1.什么是io:Linux下读写文件的方式为什么有缓冲区:标准io的机制,在执行系统调用的时候,Linux必须从用户态切换到内核态,处理相应请求,然后再回到用户态,频繁的执行系统调用,就会增加系统开销。为了避免这种情况,标准io在用户空间创建了1k的缓冲区,读写先操作缓冲区,然后在需要的时候,再进行系统调用。###2.流:标准io操作的对象(描述文件信息的结构体)###3....
2020-02-28 22:16:55 148
原创 linux 文件io
一.基本函数1.打开int fd = open("./a.c",O_CREAT|O_WRONLY|O_TRUNC,777);//参数一:路径名//参数二:打开方式//参数三:只有在创建文件的时候,//填写该参数,例如:777参数二:有以下方式r O_RDONLYr+ O_RDWRw O_WRONLY|O_CREAT|O_TRUNCw+ O_RDWR...
2020-02-28 22:16:13 104
原创 linux下 网络编程day2复习自查
TCP转载请附上链接:###一.基本步骤1.客户端a.创建套接字b.绑定自己,指定对方c.发出连接请求d.收发消息e.关闭套接字 2.服务端a.创建套接字b.绑定自己c.监听d.建立连接e.收发消息f.关闭套接字###二.基本练习server.c#include<stdio.h>//printf#include<sys/socket.h&...
2020-02-16 13:47:55 104
原创 linux下 网络编程day1复习自查
可以用来复习或者自查或者初学首先是问题列表,其次是解答一.网络体系结构###1.OSI网络模型(七层)###2.tcp/ip模型###3.四层模型,每层包含的协议###4.tcp,udp简单区别二.网络编程基础###1.通用网络地址结构###2.常用网络地址结构###3.套接字类型###4.创建套接字的函数(编程接口)###5.IP地址构成及转换###6.字节序的转换及检...
2020-02-14 13:40:40 115
原创 linux下 学习c++ 的笔记 day1
linux下 学习c++的笔记 day1###一.安装相关首先得有安装包,都是.deb文件其次命令如下:sudo dbkg -i *.deb###二.基础知识####1.头文件相关#include<iostream>(1)相比于c,引用头文件可以不用写.h(2)若要引用到c的东西,则需前边加c,例如 <cstdio.h>、####2.命名空间相关...
2019-12-24 08:58:03 107
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人