Не так давно получил задание написать ФТП клиент, естественно никакими лишними библиотеками мне пользоваться не разрешили wink
Проблема у меня состоит в следующем:
при запросе файла на скачивание сервер возвращает строку с его размером в байтах. Я по привычке решил выудить её при помощи функции sscanf предварительно разобрав строку до необходимого участка:
char str[512];
sprintf(str,"RETR %s\r\n",file);
send(s,str,strlen(str),0);
/* получение строки с размером */
char size[512];
recv(s,size,512,0);
cout << size;
/* "обрезка" строки до необходимой части */
char *tmp_size;
tmp_size = strtok(size,"(");
tmp_size = strtok(NULL,"(");
tmp_size = strtok(tmp_size, ")");
tmp_size = strtok(tmp_size, " ");
int file_size;
sscanf(tmp_size,"%d",file_size);
cout << file_size;
компилируется код нормально, но при выполнении данной функции происходит "Ошибка сегментирования" . В чём может быть проблема?
зы таким же образом получал адрес для конекта соединения данных. всё норм oO