Если вы не беспокоитесь о кроссплатформенной совместимости, просто запишите их все в двоичном виде:
int save_shorts(const unsigned short* array, size_t num_shorts)
{
int ok = 0;
FILE* out = fopen("numbers.bin", "wb");
if (out != NULL)
{
ok = fwrite(array, num_shorts * sizeof *array, 1, out) == 1;
fclose(out);
}
return ok;
}
Чтение их обратно очень похоже, но с fread()
, конечно.Возможно, вы могли бы также использовать C ++ (двоичные) потоки, но это достаточно просто.