c++ cin 读入txt的问题
源程序
#include <iostream>
using namespace std; struct Stack
{
int tos;
int stackarray[1000];
}; Stack S; void push(int a) {
S.tos++;
S.stackarray[S.tos] = a;
} void pop() {
if (S.tos == -1)
cout << "false" << " ";
else
cout << S.stackarray[S.tos] << " ";
S.tos--;
}
int main()
{
S.tos = -1;
string cmd;
cin >> cmd;
if (cmd == "pop") {
cout << "false";
return 0;
}
int number;
cin >> number;
push(number);
while(S.tos >= -1) {
cin >> cmd;
if (cmd == "pop")
pop();
else if (cmd == "push") {
cin >> number;
push(number);
}
}
return 0;
}
//a.exe <A-1-in.txt >myoutput.txt

cmd


原因是cin遇到txt文件终止符EOF后仍未结束,具体可能与缓冲有关,还是在cin pop导致
在while循环加入判断
#include <iostream>
using namespace std; struct Stack
{
int tos;
int stackarray[1000];
}; Stack S; void push(int a) {
S.tos++;
S.stackarray[S.tos] = a;
} void pop() {
if (S.tos == -1)
cout << "false" << " ";
else
cout << S.stackarray[S.tos] << " ";
S.tos--;
}
int main()
{
S.tos = -1;
string cmd;
cin >> cmd;
if (cmd == "pop") {
cout << "false";
return 0;
}
int number;
cin >> number;
push(number);
while(S.tos >= -1) {
if(cin.eof())
break;
cin >> cmd;
if (cmd == "pop")
pop();
else if (cmd == "push") {
cin >> number;
push(number);
}
}
return 0;
}
//a.exe <A-1-in.txt >myoutput.txt
之后
cmd


注意这样做,命令行输入^Z还是有问题。

应该还是缓冲区问题。具体以后再说吧
fc a.txt b.txt比较不同
可能有空格
c++ cin 读入txt的问题的更多相关文章
- c++的读入txt文件(转)
因为学姐的项目需要,要用到excel的读入读出,百度过后发现txt的读入读出比较简单,于是,我采用了先把excel转成txt,然后再读入. 方法是csdn上的天使的原地址: https://blo ...
- QT无法读入txt文件内容
用vs写QT无法利用相对路径读入txt文件,应将此文件加入到资源文件中.
- python读入txt数据,并转成矩阵
本文参考:<机器学习算法原理与编程实践>郑捷,第1章第四节 本文程序中使用的txt数据截图如下图.数据链接:https://pan.baidu.com/s/1_Ce6WLGDTWf7qQI ...
- R语言:读入txt文件中文文本出现乱码解决方案
下载安装 readr 因为使用内置函数 read.table() 读入应该是格式不符合要求会报错 library(readr) help(package="readr") 可以使用 ...
- 从cin读入一组词并把它们存入一个vector对象,然后设法把所有词都改写为大写字母。
#include<iostream> #include<vector> #include<string> using namespace std; int main ...
- R语言︱文件读入、读出一些方法罗列(批量xlsx文件、数据库、文本txt、文件夹)
笔者寄语:小规模的读取数据的方法较为简单并且多样,但是,批量读取目前看到有以下几种方法:xlsx包.RODBC包.批量转化成csv后读入. R语言中还有一些其他较为普遍的读入,比如代码包,R文件,工作 ...
- R语言csv与txt文本读入区分(sep参数)
R语言csv与txt文本读入区分 R语言用来处理数据很方便,而处理数据的第一步是把数据读入内存空间,平时最常用的文本数据储存格式有两种: 一种是CSV(逗号分隔符文本)另一种是TXT(Tab分隔符或空 ...
- C#读写TxT文件
文/嶽永鹏 WPF 中读取和写入TxT 是经常性的操作,本篇将从详细演示WPF如何读取和写入TxT文件. 首先,TxT文件希望逐行读取,并将每行读取到的数据作为一个数组的一个元素,因此需要引入List ...
- WPF 读写TxT文件
原文:WPF 读写TxT文件 文/嶽永鹏 WPF 中读取和写入TxT 是经常性的操作,本篇将从详细演示WPF如何读取和写入TxT文件. 首先,TxT文件希望逐行读取,并将每行读取到的数据作为一个数组的 ...
随机推荐
- Vue MVVM模型原理
最近反思了下自己,觉得自己很急躁,学技术总是觉得能用就行了,其实这样很不好,总是这样,就永远只能当用轮子的人.好了,废话不多说,转入正题: 要理解MVVM的原理,首先要理解它是什么,怎么运作起来的: ...
- 一个div画同心圆
二话不说上代码 background-image:radial-gradient(7px,#00A4FF 50%,#fff 75%,#00A4FF 94%); 7px是圆的半径 效果:
- Pku1236 Network of Schools
题目描述 n个学校构成一个有向图,通过m条边连接,一:问至少向图中多少个学校投放软件,可以使得所有学校直接或者间接的通过边(假设存在边(u,v),则向u投放v可以得到,而向v投放u不能通过v直接得到) ...
- [Usaco2008 Mar]River Crossing渡河问题
题目描述 Farmer John以及他的N(1 <= N <= 2,500)头奶牛打算过一条河,但他们所有的渡河工具,仅仅是一个木筏. 由于奶牛不会划船,在整个渡河过程中,FJ必须始终在木 ...
- tail -f 在对文件进行动态追踪时失效的问题
在我是用 tail -f file.txt 对这个文件进行动态追踪时: 我重新打开一个新的终端进行vim编辑这个文件并且保存 这是我们发现,tail -f file.txt'动态追踪的这个文件没有任何 ...
- python中json模块的使用
Python自带json模块,它有loads.dumps.load和dump这4个功能,用于Json格式字符串和Python数据类型间进行转换. 一.json.loads() 把Json格式字符串解码 ...
- Samba共享工具安装
Samba 是一种在局域网上共享文件的一种通信协议,它为局域网内的不同计算机之间提供文件的共享服务. (1)下载并安装 Samba 工具. 确定 Ubuntu 已连接到互联网, 执行如下命令下载 Sa ...
- DDOS攻击方式总结以及免费DDOS攻击测试工具大合集
若有雷同或者不足之处,欢迎指正交流,谢谢! DoS(Denial Of Service)攻击是指故意的攻击网络协议实现的缺陷或直接通过野蛮手段残忍地耗尽被攻击对象的资源,目的是让目标计算机或网络无法提 ...
- Java SPI机制详解
Java SPI机制详解 1.什么是SPI? SPI 全称为 (Service Provider Interface) ,是JDK内置的一种服务提供发现机制.SPI是一种动态替换发现的机制, 比如有个 ...
- P5689 多叉堆
写在前面 OI 生涯中 AC 的首道组合数学应用题. 开题 5min 发现规律,写了半下午代码,调了两天,然而甚至没过样例,心态崩了.几天之后重新写了一份代码才 AC. 虽然思维难度不大,但毕竟是联赛 ...