让我们想象一下这个输入:01202014(ddmmyyyy)。
我的问题是:
如何使用纯C ++读取三个独立变量的输入?
据我所知,这可行,但这将是一个混合C / C ++,我想知道是否有任何解决方案是纯C ++。
#include <iostream>
int main()
{
int mm, dd, yy;
scanf_s("%2d%2d%4d", &mm, &dd, &yy);
//How can I do the same with Cin? std::cin
std::cout << mm << "/" << dd << "/" << yy;
system("pause");
}
示例:
输入:01232009
目标:
mm = 1;
dd = 23;
yy = 2009
答案 0 :(得分:4)
由于您需要 DDMMYYYY 格式,您可以拥有以下内容:
std::string date ;
std::getline( std::cin, date );
int dd,mm,yy;
if ( date.size() == 8 ) // Other checkings left for you
{
mm = std::stoi( date.substr(0,2) );
dd = std::stoi( date.substr(2,2) );
yy = std::stoi( date.substr(4) );
std::cout << dd << "/" << mm << "/" << yy ;
}
请参阅Here
现在请don't change提问!