- 博客(13)
- 收藏
- 关注
原创 Linux|内存级文件原理
比如我们使用C语言新建文件使用绝对路径,默认就会在此进程的路径下进行,若是此进程的路径发生改变,新建的文件会在改变后的路径下进行,这就是。说白了,重定向功能就是分配到指定的文件描述符,而文件描述符对应指定文件的功能,这里我们可直接让指定文件的文件描述符指向对应功能的文件描述符所指向文件的功能即可。我们将键盘,显示器,磁盘,网卡都描述为stuct,他们都有系统对应停供的系统接口,读操作,写操作,可是键盘没有写,显示器没有写,磁盘的读写也不会和网卡一模一样,但是我们调用的接口都是一样的!
2024-11-23 22:56:08
1174
原创 Linux|程序地址空间
其实每一个进程都有自己的进程地址空间,每个进程空间地址都有相应的结构,里面有他的具体空间范围,要进行分配,有不同的映射表,映射到不同的物理内存。进程地址空间是指每个进程在计算机内存中所占用的地址空间。地址空间是指能被访问的内存地址范围,它由若干个连续的内存块组成。每个进程都有自己的地址空间,这意味着每个进程都有自己的内存地址范围,不会与其他进程冲突。
2024-11-20 22:02:42
904
原创 顺序表、链表——c语言实现
我们先来初始化一个顺序表,用malloc函数先给数组动态开辟四个空间,每个空间的大小为我们需要存放的数据类型的大小,此时表中没有数据,令size为0,capacity为4。这种结构出现较多,我们以这个实现链表。,这个地址所存放的变量的数据类型是SLDataType,在这里定义为int类型,如果需要存放其它类型的数据,只需要改变语句中的int为想要存储的数据类型即可。这里面cur实参,head形参,如果直接用head的话,会改变head的值,导致head指向的链表丢失,所以用cur来遍历链表。
2024-05-18 14:57:40
1066
原创 队列——(c语言实现)
队列,是一种先进先出(first in first out 简称FIFO)的数据结构,是只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,在队列中,进行插入的一端称为队尾,进行删除的一端称为队头。
2024-05-12 19:01:24
3587
原创 栈——(c语言实现)
栈,是一种后进先出(Last In First Out,简称LIFO)的数据结构,是限制在一端进行插入操作和删除操作的线性表(俗称堆栈),在栈中,允许进行操作的一端称为“栈顶”,另一固定端称为“栈底”。
2024-05-11 22:43:27
2119
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅