#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("test\n");
const char* s = getenv("PATH");
// If the environment variable doesn't exist, it returns NULL
printf("PATH :%s\n", (s != NULL) ? s : "getenv returned NULL");
printf("end test\n");
}
#include <stdio.h>
#include <winbase.h>
int main(int argc, char *argv[])
{
TCHAR buff[100] = T("");
DWORD resultLengthInCharacters = GetEnvironmentVariable(T("USERDOMAIN"), buff, 100);
if (resultLengthInCharacters > 0 && resultLengthInCharacters < 100) {
_tprintf(T("USERDOMAIN: %s\n"), buff);
} else if ( resultLengthInCharacters > 100) {
_tprintf(T("USERDOMAIN too long to store in buffer of length 100, try again with buffer length %lu\n"), resultLengthInCharacters);
} else {
// Error handling incomplete, should use GetLastError(),
// but typically:
_tprintf(T("USERDOMAIN is empty or not set in the Environment\n"));
}
return 0;
}
5条答案
按热度按时间osh3o9ms1#
您可以使用以下功能-
char * getenv (const char *name)
-返回一个字符串,该字符串是环境变量名称的值。char * secure_getenv (const char *name)
请在http://www.example.com阅读更多函数www.gnu.org/software/libc/manual/html_node/Environment-Access.html#Environment-Access
7hiiyaii2#
使用
stdlib.h
中的getenv函数。就是这样!jq6vz3qz3#
getenv:
oknwwptz4#
在Windows上,您可以使用GetEnvironmentVariable。
但是如果你试图获得一个标准的路径变量,你应该使用SHGetFolderPath函数和正确的CSIDL变量(就像从这个问题:(How do I get the application data path in Windows using C++?)
brjng4g35#
另一种方法是使用全局变量
environ
。