Вы уж определитесь, вопрос по С++ или по Си?
Исходя из предоставленного кода вопрос по Си. В С++ хоть и присутствуют Сишные функции, но обычно их не используют, а пользуются классами ввода вывода ifststream/ofstream и т.п.
Если вы пытаетесь писать на С++, то выбирайте плюсовые инструменты, а не сишные. К тому же они проще в использовании и подобный вопрос у вас не возник бы.