استفاده از getenv برای گرفتن environment path - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

استفاده از getenv برای گرفتن environment path

+1 امتیاز

من از getenv استفاده می کنم داخل visual studio ارور unsafe بودن داده میشه و میگه از _dupenv_s استفاده کنید .

من از این کد استفاده کردم ولی NULL چاپ میشه مشکل چیه ؟

#include <iostream>
#include <cstdlib>

int main()
{
	char* buf = 0;
	size_t sz = 0;
	if (_dupenv_s(&buf, &sz, "EnvVarName") == 0)
	{
		printf("EnvVarName = %s\n", buf);
		free(buf);
	}
}

 

سوال شده دی 30, 1393  بوسیله ی PSPCoder (امتیاز 1,301)   14 40 57

1 پاسخ

+1 امتیاز
 
بهترین پاسخ

مسیر رو اشتباه داده بودم به این شکل نوشتم درست شد :

#include <iostream>
#include <cstdlib>
 
int main()
{
    char* buf = 0;
    size_t sz = 0;
    if (_dupenv_s(&buf, &sz, "PATH") == 0)
    {
        printf("EnvVarName = %s\n", buf);
        free(buf);
    }
}

 

پاسخ داده شده دی 30, 1393 بوسیله ی PSPCoder (امتیاز 1,301)   14 40 57
...