Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/129.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++环境下的环境变量扩展_C++_Windows - Fatal编程技术网

C++环境下的环境变量扩展

C++环境下的环境变量扩展,c++,windows,C++,Windows,我需要在Windows平台中获取%TEMP%环境变量值字符串 如果我尝试使用任何方法SC/C++ +GETEV,……得到这个环境变量,它将返回到该字符串中的“~”。 例如:C:\DOCUME~1\pkp\LOCALS~1\Temp 但出于以下原因,我需要获取完整字符串: C:\Documents and Settings\pkp\Local Settings\Temp 如果有人知道获取此信息的方法,请告诉我。DOCUME~1不是环境变量。它是DOS遗留的命名约定,windows仍然支持它以实现向

我需要在Windows平台中获取%TEMP%环境变量值字符串

如果我尝试使用任何方法SC/C++ +GETEV,……得到这个环境变量,它将返回到该字符串中的“~”。 例如:C:\DOCUME~1\pkp\LOCALS~1\Temp

但出于以下原因,我需要获取完整字符串:

C:\Documents and Settings\pkp\Local Settings\Temp



如果有人知道获取此信息的方法,请告诉我。

DOCUME~1不是环境变量。它是DOS遗留的命名约定,windows仍然支持它以实现向后兼容性。因此,在环境变量意义上没有什么可“扩展”的。

DOCUME~1不是环境变量。它是DOS遗留的命名约定,windows仍然支持它以实现向后兼容性。因此,在环境变量的意义上,没有什么可以“扩展”的。

调用短名称。

调用短名称。

您可以使用它强制您包括windows。h但我假设您在编写windows应用程序时无论如何都要如何做。

您可以使用它强制您包括windows。h但我假设您如何做无论如何,因为你正在编写一个Windows应用程序。

你可以在纯C++中建议一些东西,即不使用标准的Windows API。但是为什么你觉得奇怪呢?wordexp@anand是否有任何等效的STL函数:这是Windows的一项功能,当然您需要向Windows寻求帮助来解决它。STL中没有Windows 8.1文件名的概念。感谢您的解释。除了windows,我对操作系统没有太多的想法。再次感谢你的帮助!你能建议一些纯C++的东西吗?比如说,不使用标准的Windows API。但是你为什么觉得奇怪呢?wordexp@anand是否有任何等效的STL函数:这是Windows的一项功能,当然您需要向Windows寻求帮助来解决它。STL中没有Windows 8.1文件名的概念。感谢您的解释。除了windows,我对操作系统没有太多的想法。再次感谢你的帮助!你能建议一些纯C++,即不使用标准窗口吗?api@anand-我不确定这是可能的,除了你用GETEVEVI做的方法,你可以在纯C++中建议一些东西,即不使用标准窗口。api@anand-我不确定这是否可能,除了使用GetEnv的方式之外,请注意,其中带有~的名称是8.3个名称。Windows系统上的许多文件(如果不是所有的话)有两个名称,一个长名称和一个8.3名称。这是Windows特有的概念。~实际上是名称的一部分,无法扩展。您有什么理由相信它不是环境变量的值?运行echo%TEMP%时会看到什么?请注意,其中带有~的名称是8.3个名称。Windows系统上的许多文件(如果不是所有的话)有两个名称,一个长名称和一个8.3名称。这是Windows特有的概念。~实际上是名称的一部分,无法扩展。您有什么理由相信它不是环境变量的值?运行echo%TEMP%时会看到什么?