IO及数据结构基础

   一.IO 

                                       标准IO和文件IO

  一.标准IO

1.标准IO:

1.标准IO是由库函数系统提供的,由ANSI C标准定义

2.是带缓冲区的操作,运行效率较高

3.支持跨平台的

4.标准IO操作的依据一般是流指针

2.库函数

库函数和系统调用的区别

1.系统调用是由系统提供,库函数是系统调用的二次封装

2.系统调用是內核,库函数是用户空间

3.系统调用是机器时间,库函数用的是用户时间

4.系统调用不可以重写,库函数可以重写

5.系统调用用于基础的操作,库函数用于复杂的操作

6.系统调用运行效率低,库函数运行效率高

7.系统调用可移植性低,库函数可移植性高

8.系统调用返回值是非负整数,库函数的返回值不一定

3.流指针和文件描述符

文件描述符是一个非负整数,实际本质是数组下标

文件流指针:文件流指针其实就是对文件描述符的封装,它的内部也是使用文件描述符来操作文件的

4.标准IO的一些操作

1.打开文件

fopen  (打开)  (参数1.需要打开文件的路径,2.需要打开的方式)

fclos(关闭)  (要关闭的文件)

2.操作文件

(1)以字符读写

fgetc    (读)  (参数:需要读的文件流)

fputc  (写) (参数1:被写的字符  参数2:写给谁:文件流)

(2)以行读写

fgets    (读) (读到哪里  读多少   读给:文件流)

fputs    (写) (从哪里写  写给谁:文件流)

(3) 以对象读写

fread   (读)  (读到哪  一次读多少   一共读多少  从哪读 )

fwrite  (写)   (从哪写  一次写多少    一共多少    写给谁)

(4)以格式化读写

fscanf  (读)  (从指定的流读,读给谁)

fprintf  (写)    (从哪写,写给指定的流)

(5)fflsh  (强制刷新指定的流)

(6)time(返回一个从计算机元年到现在的日期)

(7)fseek (光标移动)

(8)ftell(获取光标的位置)

(9)fileno(获取指定文件流里的文件描述符)

二.文件IO

(1)  open  打开  (需要打开的文件路径   打开的方式 )

操作问文件

read  读  (从哪读  读到哪  读多少)

write  写(往哪写  从哪写  写多少)

opendir  打开目录 ( 需要被打开的目录)

readdir  读目录  (需要读的目录)

stat  获取文件的所有信息

三.动态库和静态库

  静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库,因此体积较大。

  动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在,因此代码体积较小。

制作静态库:

 制作动态库:

 

 二.数据结构

一.线性结构

1.顺序表的操作

(1)头插

(2)尾插

  (3)头删

  (4)尾删

(5)销毁

(6)扩容

2.链表的操作

(1.)头插

(2)尾插

(3)头删

(4)尾删

3.栈

(1)入栈

(2)出栈

4.队列

(1)入队

(2)出队

(3)循环队列

二.树形结构

(1)二叉树

(2)数的结点遍历

先序,中序,后序

(3)广度优先

层次遍历

三.网状结构

分 类:

按有无 方 向 可 以 分 为:有 向 图 、 无 向 图

按 是 否 带 权 值:带 权 图 和 不 带 权 图

四.算法

1.算法的特征:

1.有 穷 性:算 法 必 须 在 有 限 个 语 句 能 描 述 完

2.确 定 性 ( 无 二 义 性 ):每 一 条 语 句 只 能 有 一 个 解 释

3.可 行 性:能 运 行 的

2.查找算法:

1.顺序查找

2.折半查找

3.哈希函数

3.排序算法

1.冒泡排序

2.简单选择

3.直接插入

4.折半插入

5.希尔排序

6.快速排序

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值