在OS X中打印statfs项返回0

Printing statfs items in OS X returns 0

本文关键字:返回 statfs 打印 OS      更新时间:2023-10-16

我是编程新手,所以我相信这有一个简单得令人尴尬的答案。

我正试图在OS X中编写一些代码来提取系统的默认块大小。我找到了statfs,并认为我拥有statfs结构的正确数据成员,但在运行程序时,我只得到了null值。

我这里缺什么了吗?谢谢

#include <iostream>
#include <sys/param.h>
#include <sys/mount.h>
using std::cout;
int main()
{
    struct statfs buf;
    cout << buf.f_blocks << "n";
    }

您还没有调用任何东西来填充buf。您需要调用fstatfsstatfs,并将buf作为参数传递。

statfsfstatfs都有一个额外的参数。运行man statfs以查看手册页面。