Гарантирует ли fwrite полностью написанные элементы? - PullRequest
0 голосов
/ 22 июня 2019

fwrite возвращает количество записанных элементов.Таким образом, если все в порядке

 std::array<int, 4> vals{1,2,3,4};
 auto n = fwrite(vals.data(), sizeof(int), vals.size(), stream);

n равно 4. Теперь предположим, что n равно 3. Гарантируется ли тогда, что (при условии LE и четырехбайтовых целых чисел) последовательность

0x010000000 0x020000000 0x030000000

Написано или последнее усеченное значение может быть усечено, поэтому вывод

0x010000000 0x020000000 0x030000000 0x04
...