解析带有冒号的字符串,并将两边设置为不同的变量,c++

Parsing a string with a colon and setting both sides to different variables, C++

本文关键字:设置 c++ 变量 字符串      更新时间:2023-10-16

所以我试着写一个简单的程序,它需要用户输入的时间,并计算模拟时钟的指针之间和周围的角度。我在没有解析和2个单独输入的情况下运行程序,但我想解析冒号处的时间(例如,12:35),并将左侧设置为小时变量,右侧设置为分钟变量。然而,当您不知道某些代码行的含义时,阅读示例是很困难的。谁能给我举个例子,解释一下每一行是做什么的,为什么要用这种方法?

你在找这样的东西吗?

unsigned int hours;
unsigned int minutes;
char         colon;
std::cin >> hours >> colon >> minutes;

首先输入小时,然后是冒号,然后是分钟。

这就是你要找的:

string time = "12:35";
unsigned int hour, minutes;
sscanf(time.c_str(), "%2d:%2d", &hour, &minutes);
cout << "Hour: " << hour << endl;
cout << "Minutes: " << minutes << endl;