Здравствуйте.
Помогите разобраться с закрытием потока, открытого popen: Язык СИ, линукс.
char curl_buff[64] = {0,};
FILE *curl_prog = popen("curl http://192.168.5.189 2> /dev/null", "r");
if(curl_prog != NULL)
{
fgets(curl_buff, 63, curl_prog);
}
if(pclose(curl_prog) == -1) error_log("close curl_prog.");
Закрытие должно быть после фигурных скобок или внутри...?
char curl_buff[64] = {0,};
FILE *curl_prog = popen("curl http://192.168.5.189 2> /dev/null", "r");
if(curl_prog != NULL)
{
fgets(curl_buff, 63, curl_prog);
if(pclose(curl_prog) == -1) error_log("close curl_prog.");
}
То есть, мне не понятно, если curl_prog вернул NULL, то это значит что?
Поток открылся после этой строчки:
FILE *curl_prog = popen("curl http://192.168.5.189 2> /dev/null", "r");
Или ещё не ясно, открылся он или нет и это проверяется здесь:
if(curl_prog != NULL)
{
...