一、C语言关键字
-
static
-
局部变量:值在函数调用间保持。
-
全局变量/函数:只在本文件可见,防命名冲突。
-
-
extern
- 声明外部变量/函数,跨文件使用。
-
const
- 只读,值不能改。
-
volatile
- 禁止编译器优化,用于硬件寄存器,保证每次都真读写。
二、标准I/O vs 文件I/O
-
标准I/O (
fopen/fwrite)-
有缓冲(默认4KB),效率高,跨平台。
-
要手动
fflush或等程序正常结束才写盘。
-
-
文件I/O (
open/write)-
无缓冲,每次都系统调用,效率低。
-
直接对设备,适合精细控制。
-
-
注意:磁盘I/O很慢,要有性能意识。
三、Makefile工程化
-
用目标文件.o作依赖,只重编改动文件,快。
-
用变量(
CC、TARGET)方便改配置。 -
基本结构:
-
目标: 依赖
-
制表符+命令
-
-
支持
make一键编,make clean清产物。
硬链接是"多个名字指向同一个 inode",同生共死;软链接是"一个特殊文件存着目标路径",像快捷方式,可跨设备,可链目录,但原文件删了就失效。
inode 是 Linux/Unix 文件系统中,用来描述"文件本身"的元数据(metadata)结构,它存的是文件的属性,而不是文件名
使用 chmod修改权限
