Вывод массива символов в C ++ с ненулевым символом

Я пытался вывести массив символов с ненулевым символом в конце.

Фактически, я получаю пакеты и затем печатаю их поля.

Теперь, когда эти поля не заканчиваются нулем, например, сегмент данных, который имеет размер 512, но может или не может быть полностью занят.

Когда я пишу эти данные в файл, я использую простой << перегруженная функция, которая ничего не знает о реальных данных и ищет только завершение сегмента данных.

Итак, как я могу сказать выходной функции писать только так многоконкретное количество байтов?

Вместо того, чтобы использовать что-то подобное, звонить каждый раз дорого:

enter code here  

bytescopied = strncpy(dest, src, maxbytes);

if (bytescopied < 0) { // indicates no bytes copied, parameter error

    throw(fit);          // error handler stuff here

 } else if (bytescopied == maxbytes) {

    dest[maxbytes-1] = '\0';   // force null terminator

}

Ответы на вопрос(5)

Ваш ответ на вопрос