04 2022 档案
摘要:文件描述符 内核用三个相关的数据结构来表示打开的文件: 描述符表。每个进程有它独立的描述符表,它的表项是由进程打开的文件描述符来索引的。每个打开的描述符指向文件表中的一个表项。 文件表。打开文件的集合是由一张文件表来表示的,所有的进程共享这张表。每个文件表的表项组成包括当前的文件位置、引用计数、文件
阅读全文
摘要:Makefile 命名:makefile / Makefile 一个规则 目标:依赖条件 (一个tab)命令 hello:hello.c gcc hello.c -o hello 若想生成目标,检查规则中的依赖条件是否存在,如不存在,则寻找是否有规则用来生成该依赖文件。 检查规则中的目标是否需要更新
阅读全文
摘要:gdb调试工具:前提是有源码,对文件进行编译时增加-g参数。加了这个参数后的编译文件会大一些,是因为增加了gdb的调试内容。 使用时:gdb a.out。 基本命令: list n: 列出第n行源码 break n: 在第n行设置断点 run: 运行程序直到断点 next: 下一条指令,会越过函数
阅读全文
摘要:静态库 静态库名字以lib开头,以.a结尾。 静态库制作步骤: 写好源代码。 编译源代码生成.o文件。 gcc -c add.c -o add.o gcc -c sub.c -o sub.o 制作静态库 ar rcs libname.a add.o sub.o ... 使用静态库: gcc test
阅读全文
摘要:gcc编译参数 -I:指定头文件所在目录位置。 gcc hello.c -o hello -I ./hellodir -c:只做预处理、编译、汇编。得到二进制文件。 -g:编译时添加调试文件,用于gdb调试。 -Wall:显式所有警告信息。 -D:向程序中动态注册宏定义。
阅读全文
摘要:文本模式:esc进入命令模式 文本模式不能直接进入末行模式 命令模式按':'进入末行模式 末行模式: w:保存 q:退出 esc esc:退回命令模式 执行末行命令后回到命令模式 跳转到指定行:行号,如:88 命令模式进入文本模式: i:插入光标前一个字符 I:插入行首 a:插入光标后一个字符 A:
阅读全文
摘要:上 Ctrl-p previous 下 Ctrl-n next 左 Ctrl-b backward 右 Ctrl-f forward Del Ctrl-d delete Home Ctrl-a the first letter End Ctrl-e end 清除整行 Ctrl-u 删除光标到行末 C
阅读全文
摘要:// Problem: P2895 [USACO08FEB]Meteor Shower S // Contest: Luogu // URL: https://www.luogu.com.cn/problem/P2895 // Memory Limit: 125 MB // Time Limit:
阅读全文
摘要:// Problem: P1135 奇怪的电梯 // Contest: Luogu // URL: https://www.luogu.com.cn/problem/P1135 // Memory Limit: 125 MB // Time Limit: 1000 ms // User: Pannn
阅读全文
摘要:// Problem: P1443 马的遍历 // Contest: Luogu // URL: https://www.luogu.com.cn/problem/P1443 // Memory Limit: 125 MB // Time Limit: 1000 ms // User: Pannnn
阅读全文
摘要:// Problem: P1219 [USACO1.5]八皇后 Checker Challenge // Contest: Luogu // URL: https://www.luogu.com.cn/problem/P1219 // Memory Limit: 125 MB // Time Lim
阅读全文