linux文件,IO,缓存,动\静函数库
1.文件IO与标准IO的区别文件IO直接调用内核提供的系统调用函数头文件是unistd.h标准IO间接调用系统调用函数头文件是stdio.h缓存的概念1.程序的缓存就是用户空间的缓存。2.每打开一个文件在内核中开辟一个缓存即为内核空间缓存。3.标准IO的库也有一个缓存为库缓存。库缓存的特点1.遇到 \n 将库缓存写到内核缓存即调用系统调用函数。2.库缓存写满才会调用系统调用函数。2.三类读写函数1.行缓存换行符\n或写满缓存调用系统调用函数读fgetsgetsprintffprintf,sprintf 写fputs, puts, scanf2.无缓存 stderr3.全缓存 写满在调用系统调用函数读:fread fwrite3.静态库和动态库静态库在编译时将库编译进可执行程序中动态库在运行时将库加载到可执行程序中静态库的制作1.生成目标文件 gcc file.c -c -o file.o2.静态库创建ar -cr -o libfile.a file.o3.静态库的编译 gcc -o main main.c -L. -lfile动态库的制作1.生成目标文件gcc file.c -c -o file.o2.动态函数库创建gcc -fpic -shared -o libfile.so file.o3.动态库的编译gcc -o main main.c -L. -lfile在执行main之前 sudo mv libfile.so /usr/lib 意思是将动态函数库放到/usr/lib的目录中去以此在执行的时候方便查找动态函数库的使用。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2501235.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!