C++ 转换和验证字符串
我需要以HH:MM的形式将时间作为用户输入,然后对其进行验证。 在这种特定的形式下,它需要是一个适当的时间。有什么好主意吗 我正在尝试创建一个函数,该函数将遍历字符串,验证每个字符,然后将它们转换为数字(或某种时间戳),这样我就可以相互比较几个字符串C++ 转换和验证字符串,c++,algorithm,console-application,std,C++,Algorithm,Console Application,Std,我需要以HH:MM的形式将时间作为用户输入,然后对其进行验证。 在这种特定的形式下,它需要是一个适当的时间。有什么好主意吗 我正在尝试创建一个函数,该函数将遍历字符串,验证每个字符,然后将它们转换为数字(或某种时间戳),这样我就可以相互比较几个字符串 我只使用std名称空间。使用boost::regex匹配字符串及其部分(HH)和(MM),并使用scanf获取小时和分钟。使用boost::regex匹配字符串及其部分(HH)和(MM),并使用scanf获取小时和分钟。听起来更像是一个算法问题,我
我只使用std名称空间。使用boost::regex匹配字符串及其部分(HH)和(MM),并使用scanf获取小时和分钟。使用boost::regex匹配字符串及其部分(HH)和(MM),并使用scanf获取小时和分钟。听起来更像是一个算法问题,我会: 1、检查字符串的长度(如果是5)。
2,检查'':'在中间。< BR> 3、检查HH是否在范围内。
4、检查MM是否在范围内。
5、将其转换为方便您的格式。听起来更像是一个算法问题,我会: 1、检查字符串的长度(如果是5)。
2,检查'':'在中间。< BR> 3、检查HH是否在范围内。
4、检查MM是否在范围内。
5、将其转换为方便您的格式。对于这个特定的问题来说,这可能有些过分,但这种任务非常适合状态机。基本上,您希望一次读取一个字符的输入,每个字符都可以更改机器的状态,直到您最终进入成功或错误状态。例如:
- 如果不是数字,则更改为错误状态
- 否则,存储值并更改为状态2
- 如果不是数字,则更改为错误状态
- 否则,将存储值乘以10,并添加第二个字符。如果结果超出范围,请更改为错误状态。否则,更改为状态3
- 如果
,则更改为状态4,否则更改为错误状态:
- 与第一个角色类似,成功后变为状态5
- 类似于第二个角色,成功后变为状态6
- 优胜者是你李>
- 处理这个错误,duh
对于这个特定的问题来说,这可能有些过分,但这种任务非常适合于状态机。基本上,您希望一次读取一个字符的输入,每个字符都可以更改机器的状态,直到您最终进入成功或错误状态。例如:
- 如果不是数字,则更改为错误状态
- 否则,存储值并更改为状态2
- 如果不是数字,则更改为错误状态
- 否则,将存储值乘以10,并添加第二个字符。如果结果超出范围,请更改为错误状态。否则,更改为状态3
- 如果
,则更改为状态4,否则更改为错误状态:
- 与第一个角色类似,成功后变为状态5
- 类似于第二个角色,成功后变为状态6
- 优胜者是你李>
- 处理这个错误,duh