Я читаю буферные байты из сокета, но я не знаю, как инициализировать буферный массив с информацией о длине.Инициализировать длину массива буфера с переменной
uint32_t len;
int lengthbytes = 0;
int databytes = 0;
// receive the length info of an image data
lengthbytes = recv(clientSocket, (char *)&len, sizeof(len), 0);
// convert hexadecimal data to length in bytes
len = ntohl(len);
// ????? how to initialize the buffer array with the length info ????
char buf[len]; -----> this is illegal in C
// read the image data
databytes = recv(clientSocket, buf, sizeof(buf), 0);
Если я хочу использовать цикл while для получения множества изображений, как мне удалить содержимое 'buf' в конце каждого цикла? – askingtoomuch
@boogiedoll См. Мой обновленный ответ. –
отлично! благодаря :) – askingtoomuch