C和我正在讲一个讲话时钟。我的问题是我可以将时间(小时和分钟)保存在两个NSInteger
中但我无法比较它们。
具体问题是我想分开时间(例如小时存储在NSInteger
中,如下所示:16
。我希望获得1
和{分别{1}}。我想将一个数字与另一个数字分开来比较它们。
任何人都可以帮助我吗?一个好的比较语法也将是一个很大的帮助!谢谢。
答案 0 :(得分:0)
如果我理解了您的请求,您想将整个数字分成0-9的数字?
你可以这样做:int hours = 16
int hour1 = hours / 10;
int hour2 = hours - hour1
hour2 = hours % 10;
int minutes = 47;
int minute1 = minutes / 10;
int minute2 = minutes - minute1;
minute2 = minutes % 10;
答案 1 :(得分:0)
我希望将div
功能用于此目的(对于NSInteger
,请使用ldiv
):
ldiv_t q;
NSInteger hours = 16;
q = ldiv(hours, 10);
NSInteger hours_tens_digit = q.quot;
NSInteger hours_minutes_digit = q.rem;
更新:正如amattn在评论中指出的那样,iOS上的NSInteger
为32位,因此您可以使用div
或ldiv
。 (当然,使用类似输入的标准库函数是NSInteger
突然变得不那么有用的情况之一。)