在C ++中,iostream会在cin之后自动放入一个新行。有没有办法摆脱这个?
我想使用iomanip将信息格式化为表格,如下所示:
cin cout 0.078125 3DA00000 -8.75 C10C0000 23.5 41BC0000
(随机数字)
示例代码:
#include <iostream>
using namespace std;
int main()
{
int num;
cin >> num; //now a new line.
cout << num << endl;
return 0;
}
答案 0 :(得分:1)
您可能按下返回键将输入从命令行发送到程序的标准输入。这是新行的来源。在此换行符出现在控制台之前,您无法从hello
o1 e1 o2 e2 o3 e3
Test 1
o1 o2 o3 e1 e2 e3
Test 2
o1 o2 o3 e1 e2 e3
Test 3
o1 o2 o3 e1 e2 e3
读取您的号码,因为新行是导致控制台首先将您的输入传递给程序的原因。作为用户,您可以将控制台(或运行程序的任何内容)配置为采取不同的行为,但程序本身无法强制执行此类行为。
如果您真的希望将输入和输出放在同一行,您需要找到一种方法来写入前一行&#34;。工作原理取决于您的控制台(另请参阅How to rollback lines from cout?)。没有标准的方法可以做到这一点,因为cin
和cin
没有义务连接到控制台或任何类似的控制台,所以不清楚&#34;写入以前的线&#34;甚至意味着什么。