C++;至C#:cin至控制台。阅读 在C语言中,有一种方法可以读取同一行上的多个输入,就像我在C++中一样?p>
我举了一个例子:C++;至C#:cin至控制台。阅读 在C语言中,有一种方法可以读取同一行上的多个输入,就像我在C++中一样?p>,c#,c++,console,iostream,C#,C++,Console,Iostream,我举了一个例子: #include <iostream> #include <string> using namespace std; int main () { cout << "Format: name age"<< endl; int age; string name; cin >> name >> age; return 0; } #包括 #包括 使用名称空间std; int main() {
#include <iostream>
#include <string>
using namespace std;
int main ()
{
cout << "Format: name age"<< endl;
int age;
string name;
cin >> name >> age;
return 0;
}
#包括
#包括
使用名称空间std;
int main()
{
姓名>>年龄;
返回0;
}
没有。您必须使用Console.Read或Console.ReadLine来实现这一点。String.Split
是这里显而易见的解决方案:
string input = Console.ReadLine();
string [] split = input.Split(` `);
然后使用结果数组
您丢失了“好”的变量名,必须从string
转换为int
——但无论如何您都必须这样做
可以指定一组拆分字符:
string [] split = words.Split(new Char [] {' ', ',', '.', ':', '\t' });
<>你可以使用C++编写的代码,如:代码> STD::CIN < /代码>和<代码> java。它可以从控制台读取数字、内联、双倍、小数和字符串标记,就像C++中的“代码> CIN > A> B<代码>。
试试这样的事情:
var allInputs = Console.In
.ReadToEnd()
.Split(new string[] { " ", Environment.NewLine }, StringSplitOptions.RemoveEmptyEntries);
int argPtr = 0;
var strPar1 = allInputs[argPtr++];
var intPar2 = int.Parse(allInputs[argPtr++]);
var strPar3 = allInputs[argPtr++];
var intPar4 = int.Parse(allInputs[argPtr++]);
这是一个更为方便的问题,与拆分ReadLine相反。我认为
cin>>name>>age
更为灵活,它拆分字符串而不仅仅是按空格。