思路:
.假设一个目录的大小为这个目录下所有普通文件的大小
写一个函数用来求一个目录的大小 (子目录下的也要)
伪代码:
//打开目录
//不断的获取目录项
while()
{
//进行具体操作
//判断文件类型
if()//普通文件
{
//求大小
}
else if()//目录文件
{
//把子目录的大小获取
}
}
//关闭目录
具体实现:
#include <stdio.h>
#include <string.h>
#include <dirent.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
/*
get_dir_size:获取目录的大小
@pathname :要获取的目录的路径名
返回值:
成功返回目录大小
失败返回-1
*/
int get_dir_size(const char*pathname)
{
in