#include #include #include int main(int argc, char *argv[]) { char c; if ( argc != 2 ) cerr << argv[0] << " takes one argument only\n"; fstream fio(argv[1], ios::in | ios::out); if ( ! fio ) { cerr << argv[0] << ':' << " Cannot open" << argv[1] << " for updating\n", exit(1); } while ((c = fio.get()) != EOF) if ( isupper(c) ) { fio.seekg(-1, ios::cur); // position for writing c fio.put(tolower(c)); } fio.close(); } // note could use seekp instead of seekg