use C++ IO now rather than C IO