【发布时间】:2010-12-24 06:54:05
【问题描述】:
我有一个字符串,例如 "23:0",它是一个小时格式。例如,我需要将其转换为 int,以便可以添加时间。我有一个字符串 "23:0" 我需要添加 6 个小时,这将是 "6:0" 然后给我 "5:0",然后将其转换回字符串。
任何想法将不胜感激:)
当我编写我的函数时,我收到一个错误“无法在初始化中将'字符串转换为 char*'”我的函数如下所示:
int convert(String x){
char *str = x;
int hour; int minute;
sscanf(str, "%d:%d", &hour, &minute);
return hour;
}
convert(time) //time is a String for example 23:0
【问题讨论】:
-
一条评论数英里下来说 '哦,我打错了:我真的有“23:0”'。 (a) 编辑问题,并且 (b) 在这种情况下,如果您在 POSIX 机器上,您可以/应该调查
strptime()将字符串转换为时间,strftime()将时间转换为字符串。然而,这可能只是几个小时和几分钟的过度杀伤力。