【项目4 - 处理C++源代码的程序】(3)
2015-06-15 12:56
411 查看
问题描述:
(3)读入一个C++程序,输入m、n两个数字,从第m行起的n行代码将作为注释使用(即在这些行前面加上”//”),新程序保存到另一个.cpp文件中,并在屏幕上显示处理过的程序,显示时加上行号。
代码实现:
运行结果:
(3)读入一个C++程序,输入m、n两个数字,从第m行起的n行代码将作为注释使用(即在这些行前面加上”//”),新程序保存到另一个.cpp文件中,并在屏幕上显示处理过的程序,显示时加上行号。
代码实现:
#include <iostream> #include <cstdio> #include <cstring> #include <cstdlib> #include <fstream> using namespace std; int main(){ fstream my1("source.cpp"); if(!my1){ cerr<<"can't find source.cpp!\n"; exit(1); } ofstream my2("newsource.cpp"); if(!my2){ cerr<<"can't write the newsource.cpp!\n"; exit(1); } int n,m; printf("请输入m和n,将会使得程序第m行起的n行代码将作为注释使用\n"); scanf("%d%d",&m,&n); int i=1; string s; while(!my1.eof()){ getline(my1,s); if(i>=m&&i<=(m+n)) { my2<<"\\"; my2<<"\\"; } my2<<s<<'\12'; i++; } my1.close(); my2.close(); fstream in("newsource.cpp"); if(!in){ cerr<<"can't find newsource.cpp!\n"; exit(1); } printf("\n\nWatch the newsource.cpp\n\n\n"); while(!in.eof()){ getline(in,s); cout<<s<<'\12'; } return 0; }
运行结果:
相关文章推荐
- c++: 为什么需要名字隐藏机制(c++ Why name hiding)?
- C++注释转化为C语言注释
- 【项目4 - 处理C++源代码的程序】(2)
- c++ 用数组实现栈类
- hdu 1030 Delta-wave (C++, 0ms, explanatory comments.)
- c++系列:打印表达式树
- 【足迹C++primer】49、超载,变化,运营商
- C++中的类型转换static_cast、dynamic_cast、const_cast和reinterpret_cast
- dynamic_cast.cpp
- operator.cpp
- friend_class.cpp
- c语言
- stdarg.cpp
- C++文件读写略解(fstream)
- C++ 自定义事件机制
- 面向对象程序设计-C++ Finial exam review NOTES【第十六次上课笔记】
- c++空类实例大小不是0原因
- C++10.5 multimap和multiset类型---equal_range、lower_bound 和upper_bound函数
- Ubuntu 12.04 配置c++开发环境
- Effective C++ 条款49