Adamos, ну если в рамках упражнения ограничиться одной платформой, то прокатит. А на разных... Можно договориться при взаимодействии с внешним миром (в т.ч. диском) юзать utf-8, но это уже advanced тема в C++. К сожалению :(
Adamos, ну при бинарном формате можно просто интерпретировать строку как буфер памяти и write его. Только на размер строки лучше всё же не пожалеть sizeof(size_t) байт (по крайней мере, по умолчанию)