С C ++ у вас есть много вариантов взаимодействия с файлами, особенно если вы используете одну из множества фреймворков, таких как Qt, wxWidgets или GLib. Подводя итог, можно сказать, что стандартная библиотека C ++ использует потоковую модель доступа к файлам через std :: ifstream и std :: ofstream. Это похоже на то, что вы видите при использовании std :: cout, и тому, что иллюстрирует пост @ Martin. У вас также есть стандартные функции библиотеки C для чтения и записи файлов, а именно open (), close (), read () и write (). Варианты f * () принимают указатель FILE, а не дескриптор файла. Варианты C более полезны, когда вы хотите рассматривать файл как необработанный поток байтов, что, к сожалению, происходит чаще, чем следует. Хотя оба они являются «переносимыми», построение путей и обработка каталогов / специальных файлов обычно не являются, поэтому вы получаете такие вещи, как boost :: filesystem.