getcwd第二个参数

如果我正在读取当前目录,我应该填写函数getcwd的第二个参数?     
已邀请:
要填充的缓冲区大小:
char result[PATH_MAX];
char *r = getcwd(result, PATH_MAX);
未能正确设置(或点
ENAMETOOLONG
/
ERANGE
)可能会导致缓冲区溢出问题。 警告:并非所有平台都提供PATH_MAX。如果你可以确定它在你的平台上,那么它非常方便。 你也可以使用
realpath()
,(POSIX.1-2008)
malloc()
内存让你更干净地做到这一点:
char *result = realpath(".", NULL);
// do stuff with result
free(result);
    
您在第一个参数中提供的缓冲区长度,以便不会发生溢出。     

要回复问题请先登录注册