温馨提示×

C++ getcwd返回值意义何在

c++
小樊
85
2024-11-27 16:07:14
栏目: 编程语言

getcwd() 是 C++ 标准库中的一个函数,它用于获取当前工作目录的绝对路径

getcwd() 函数的原型如下:

#include <unistd.h>
char *getcwd(char *buf, size_t size);

参数说明:

  • buf 是一个字符数组,用于存储当前工作目录的绝对路径。
  • sizebuf 的大小(以字节为单位)。

返回值意义: getcwd() 函数返回一个指向 buf 的指针,该指针指向的字符串包含了当前工作目录的绝对路径。如果函数成功执行,返回值不会是 NULL。如果在获取当前工作目录时发生错误(例如,提供的缓冲区大小不足以容纳路径),则返回 NULL,并设置 errno 以表示错误原因。

示例:

#include <iostream>
#include <unistd.h>
#include <cstring>

int main() {
    char cwd[1024];
    if (getcwd(cwd, sizeof(cwd)) != nullptr) {
        std::cout << "Current working directory: " << cwd << std::endl;
    } else {
        std::cerr << "Error getting current working directory" << std::endl;
    }
    return 0;
}

这段代码将输出当前工作目录的绝对路径。如果发生错误,将输出错误信息。

0