这样对吗?

starcat 2010-05-30 11:15:26
做一个习题
/*
Display a file a line at a time, waiting for the user to press
the "Enter" key after each line.
*/

#include <iostream>
#include <string>
#include <fstream>
#include <vector>
using namespace std;

int main() {
vector<string> lines;
ifstream in("filename.cpp");
string line;
while(getline(in, line))
lines.push_back(line);
char ch;
for(int i = 0; i < lines.size(); i++) {
cout << lines[i];
cin.get();
cout << endl;
}
}

不知符不符合题意
不想用C的方法getchar()来判断回车,求指点
...全文
152 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
starcat 2010-05-31
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 gjlzjb 的回复:]
楼主你用“cin.get()”说明是任意字符都可以,而题目要求是回车,所以我做了一些改动。只能用回车,你看是否合理。
[/Quote]谢谢
奇怪的是,我的写法输入tab,或者space都没反应
难道跟编译器有关?(BCC5.5)
gjlzjb 2010-05-31
  • 打赏
  • 举报
回复
楼主你用“cin.get()”说明是任意字符都可以,而题目要求是回车,所以我做了一些改动。只能用回车,你看是否合理。

/*
Display a file a line at a time, waiting for the user to press
the "Enter" key after each line.
*/

#include <iostream>
#include <string>
#include <fstream>
#include <vector>
using namespace std;

int main() {
vector<string> lines;
ifstream in("filename.cpp");
string line;
while(getline(in, line))
lines.push_back(line);
char ch;
for(int i = 0; i < lines.size(); i++) {
cout << lines[i];
//cin.get(); 原来你这样意思是任意字符都可以,题目要求是回车
while(cin.get(ch))//获取一个字符
{
if(ch=='\n') break;//判断是否是回车
}
//cout << endl;
}
}
liutengfeigo 2010-05-31
  • 打赏
  • 举报
回复

UP
内容概要:本文提出了一种基于快速稀疏辅助信号分解与非凸增强技术的轴承故障诊断方法,并提供了完整的Matlab代码实现。该方法旨在从复杂的机械设备振动信号中高效、准确地提取故障特征,通过优化信号分解过程克服传统方法在噪声干扰下敏感、分辨率不足的问题,结合非凸优化策略增强微弱故障信号的辨识能力,从而提升早期故障诊断的准确性与鲁棒性。研究涵盖了算法原理、模型构建、仿真验证及结果分析,展示了其在旋转机械状态监测中的实际应用价值。; 适合人群:具备一定信号处理基础和Matlab编程能力,从事机械故障诊断、状态监测、智能运维等相关领域的科研人员及工程技术人员,尤其适合研究生和从事相关项目研发的工程师。; 使用场景及目标:①应用于旋转机械(如电机、风机、齿轮箱)的轴承早期故障检测;②用于复杂噪声环境下微弱故障信号的提取与增强;③为开发高精度智能诊断系统提供算法支持和技术参考;④辅助完成科研论文复现、毕业课题或工业项目开发。; 阅读建议:此资源以算法实现为核心,强调理论与实践结合,建议读者在学习过程中同步运行Matlab代码,深入理解信号分解与优化增强的每一步处理逻辑,并尝试在不同数据集上进行测试与调参,以掌握算法的适应性与优化技巧。

33,315

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧