您的位置:首页 > 编程语言

高级编程之目录(一)

2016-01-22 13:58 218 查看
目 录 流

1.DIR *opendir(const char *name);

功能:

打开一个目录获得一个目录流指针

参数:

name:文件名

返回值:

成功目录流指针

失败返回NULL

2.struct dirent *readdir(DIR *dirp);

功能:

从目录流中读到一个文件的信息

参数:

dirp:目录流指针

返回值:

返回一个关于文件属性的结构体指针

目录信息读取完毕或者出错返回NULL

3.int stat(const char *path, struct stat *buf);

功能:获得文件的属性

参数:

path:文件的路径

buf:把文件的属性放在buf指向的空间中

返回值:

成功返回0

失败返回-1

库的制作

1.静态库

编译时加载的库

1.gcc -c add.c -o add.o

2.ar crs libmyadd.a add.o

3.gcc main.c -o main -L. -lmyadd

2.动态库

执行时记载的库

1.gcc -fPIC -c add.c -o add.o

2.gcc -shared add.o -o libmyadd.so

3.cp libmyadd.so /usr/lib

4.gcc main.c -o main -lmyadd

静态库和动态库的区别

1.静态库是在编译的时候加载而动态库是在执行时加载

2.静态库会使程序体积变大

3.多个文件使用动态库时,内存中只需一份就可以完成
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: