首先感谢:
APUE 学习环境配置 - 简书
Linux安装apue.3e以及运行第一个例子报错undefined reference to 'err_quit'_anlian523的博客-CSDN博客
上述两篇文章,解决了我遇到的所有问题;
示例程序:
#include "include/apue.h"
#include <stdio.h>
#include <dirent.h>
int main(int argc, char* argv[]) {
DIR* dp;
struct dirent* dirp;
if (argc != 2) {
err_quit("usage: is directory name");
}
dp = opendir(argv[1]);
if (dp == NULL) {
err_sys("can't open %s\n", argv[1]);
}
while((dirp = readdir(dp)) != NULL) {
printf("dirp-<d_name: %s\n", dirp->d_name);
}
closedir(dp);
exit(0);
}
终端运行:./test /dev
其中 /dev 作为 程序的参数,也就是argv[1];
好了,作为Richard Stevens 大神的著作《UNIX环境高级编程》的第一个示例,就跑通了;接下来我会继续拜读大神的六本著作,这仅仅是第一步;
|