第一次看到这个函数感觉是新增一个环境变量,再看传入的参数又感觉不像。
扩充环境字符串:将由百分号封闭起来的环境变量名转换成那个变量的内容。可以写个例子看看
#include <stdio.h>
#include <windows.h>
int main(int argc,char* argv, char* env)
{
char l_szSrcA[256]={"%ProgramFiles%\\WindowsPowerShell\\;%SystemRoot%\\system32\\;%SystemDrive%\\"};
char l_szDstA[256]={0};
printf("源字符串:%s\n",l_szSrcA);
ExpandEnvironmentStringsA(l_szSrcA,l_szDstA,256);
printf("目的字符串:%s\n",l_szDstA);
return 0;
}
输出结果:
常用系统变量:%ProgramFiles% %SystemRoot% %SystemDrive% %Path%
环境变量在cmd窗口显示方法:
在cmd窗口中可以使用echo + %ProgramFiles%输出某个环境变量的值;
使用set命令可以输出所有环境变量值,set + ProgramFiles(变量名前后都不用加%)输出某个环境变量的值。
扩充环境变量:
记得刚学习python的时候是在系统属性--->高级--->环境变量--->系统变量(让电脑的所有用户都能在cmd窗口使用python)--->Path里面增加C:\Python27、C:\Python27\Scripts两个路径
续一:
C语言可以使用GetEnvironmentVariableA( )函数获取某个环境变量值,代码:
#include <stdio.h>
#include <Windows.h>
int main()
{
char l_szEnvironmentStringA[260]={0};
GetEnvironmentVariableA("COMSPEC",l_szEnvironmentStringA,260);
printf("EnvironmentString:%s\n",l_szEnvironmentStringA);
system("pause");
return 0;
}
输出结果: