當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ getenv()用法及代碼示例


C++ 中的 getenv() 函數用於返回指向 C 字符串的指針,該字符串包含作為參數傳遞的環境變量的值。

環境變量是 dynamic-named 值,可以影響正在運行的進程在計算機上的行為方式。每個操作係統都提供環境變量,以便新安裝的程序可以輕鬆識別重要目錄(例如 Home、Profile、Bin 等)。所有編程語言都提供某種方式來訪問它們運行所在的操作係統中存在的此類環境變量。此函數通過函數 getenv 提供給 C++ 語言。在本文中,您將了解 C++ 中的 getenv 函數。

該函數在 <cstdlib> 頭文件中定義。

用法:

char *getenv(const char *name)

參數:在這裏,名字 包含所請求的環境變量名稱的字符串(或字符數組),

返回值:包含所請求環境變量值的字符串,如果未找到該變量,則為 NULL 指針。

例子:

C++


// C++ Program to get the environment variable
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
    // Variable storing the environment variable name
    char* env_variable = "PATH";
    // This variable would store the return value of getenv
    // function
    char* value;
    // Calling the getenv function, and storing the return
    // value
    value = getenv(env_variable);
    // if executes if a non null value is returned
    // otherwise else executes
    if (value != NULL) {
        // Displaying the variable name along with its value
        cout << "Variable = " << env_variable
             << "\nValue= " << value;
    }
    else
        cout << "Variable doesn't exist!" << value;
    return 0;
}
輸出
Variable = PATH
Value= /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

解釋:一個名為env_variable被分配了所請求值的環境變量的名稱。另一個變量被聲明將存儲返回值獲取環境函數。然後將環境變量的名稱傳遞給獲取環境函數。該函數在其擁有的環境變量列表中搜索環境變量的名稱。如果找到該變量,則返回其環境變量的值。否則,返回 NULL 值。之後在 if 條件下將值存儲在變量中已檢查。如果值為 NULL(意味著具有此類名稱的變量不存在),則顯示此類消息。否則,顯示與該變量關聯的值。

例子:

C++


// C++ Program to obtain the value of an environment
// variable that doesn't exist.
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
    // Variable storing the environment variable name
    char* env_variable = "DELTREE";
    // This variable would store the return value of getenv
    // function
    char* value;
    // Calling the getenv function, and storing the return
    // value
    value = getenv(env_variable);
    // if executes if a non null value is returned
    // otherwise else executes
    if (value != NULL) {
        // Displaying the variable name along with its value
        cout << "Variable = " << env_variable
             << "\tValue= " << value;
    }
    else
        cout << "Variable doesn't exist!";
}
輸出
Variable doesn't exist!

解釋:由於變量不存在,程序顯示變量不存在!如果在程序運行時添加變量,也會顯示此消息。由於程序在執行程序之前從操作係統複製環境變量列表。



相關用法


注:本文由純淨天空篩選整理自VasuDev4大神的英文原創作品 C++ getenv() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。