Во всех примерах по сокетам есть такой код:
if ((numbytes=recv(fd,buf,MAXDATASIZE,0)) == -1) { printf("recv() error\n"); exit(-1); }
buf[numbytes] = '\0'; printf("Server Message: %s\n",buf);
Но что делать если я не знаю сколько памяти мне нужно выделить в MAXDATASIZE, а точный размер я могу получить только в recv, но для этого мне нужно всё равно указать MAXDATASIZE.
Т.е как я могу поместить в переменую все целеком, присланные данные из recv и правильно выделить память.