WebRequest в чем проблема?

 
      string str = "Привет мир";
      char data[],result[];
      StringToCharArray(str,data);
      string google_url="http://127.0.0.1";
      string cookie=NULL,headers;
      int res;
      ResetLastError();
      int timeout=1000;
      res=WebRequest("GET",google_url,cookie,NULL,timeout,data,sizeof(data),result,headers);
      if(res==200)
      {
        string str_data = CharArrayToString(result);
        int my_size = sizeof(str_data);
        Print(str_data+"  Size: "+IntegerToString(my_size));
      }

2016.09.01 13:38:17.106    Info (Si-9.16,M5)      Size: 12  // появляется в эксперте (Print)

а передается HTTP/1.0 200 Ok\r\n\r\nProba\n . Почему я получаю пустую строку длинной 12 ?

 
Посмотрите в отладчике
 
MetaQuotes Software Corp.:
Посмотрите в отладчике
массив char result[0] ( данных нет) ,но res==200 ( значит ответ от сервера приходит ) . тогда возникает вопрос данные идут после двойного перевода строки (\r\n\r\n) и заканчиваются переводом строки (\r\n) , правильно ?
 
dimka8:

2016.09.01 13:38:17.106    Info (Si-9.16,M5)      Size: 12  // появляется в эксперте (Print)

а передается HTTP/1.0 200 Ok\r\n\r\nProba\n . Почему я получаю пустую строку длинной 12 ?

sizeof(string) - это размер, который переменная занимает в памяти, а не длина значения строки!

Для получения длины значения строки используйте StringLen

 
Ilyas:

sizeof(string) - это размер, который переменная занимает в памяти, а не длина значения строки!

Для получения длины значения строки используйте StringLen

спасибо за ответ . разобрался ,не правильно передавал дескриптор на ответ для сокета