#ifdef _WIN32 // Compiling for Windows Platform #include #include #include "os.h" #include void SetEnv(const char* env_var_name, const char* env_var_value) { bool err = SetEnvironmentVariable(env_var_name, env_var_value); if(false == err){ printf("Set environment variable failed!\n"); exit(1); } return; } char* GetEnv(const char* env_var_name){ char* buff; DWORD char_count = GetEnvironmentVariable(env_var_name, NULL, 0); if (char_count == 0) return NULL; buff = (char*)malloc(sizeof(char) * char_count); GetEnvironmentVariable(env_var_name, buff, char_count); buff[char_count - 1] = '\0'; return buff; } #elif defined(__linux__) #include "os.h" #include void SetEnv(const char* env_var_name, const char* env_var_value){ int err = setenv(env_var_name, env_var_value, 1); if(0 != err){ printf("Set environment variable failed!\n"); exit(1); } return; } char* GetEnv(const char* env_var_name) { return getenv(env_var_name); } #endif