我有一个应用程序,我应该使用 unistd.h 中的 read()来从输入中获取日期,例如:
100 200 300 400 500
我正在使用此代码:
int a = 0;
int b = 0;
cin >> a;
cin >> b;
char* buffer = new char[100];
read(0, buffer, 100);
但是当我将我的行放入控制台时,它无法为100
和200
生成 cin ,然后读取()为300 400 500
。
我的目标是将100 200 300 400 500
作为一行,然后按输入一次。
那么,我该如何解决呢?
谢谢:)
答案 0 :(得分:0)
使用string而不是int;并用getline
读取孔线字符串a; getline(cin,a);
答案 1 :(得分:0)
您可以使用下面的getline函数一次读取整行。
#include <iostream> // std::cin, std::cout
char input[100];
cin.getline(input, 100);