【问题标题】:How to get hours and minutes from interval of seconds in objective c如何从目标c中的秒间隔获取小时和分钟
【发布时间】:2012-01-15 19:28:06
【问题描述】:

我有两个日期时间之间的时差。以秒为单位的间隔是 3660,这意味着 1 小时 1 分钟前。我怎样才能像我之前说的那样以小时和分钟显示秒的间隔?我可以通过(3600/60)/60 获得小时数,这给了我一小时,但我如何获得剩余的分钟数和小时数?

任何帮助表示赞赏。

【问题讨论】:

    标签: objective-c nsdate nstimeinterval


    【解决方案1】:

    类似这样的:

    int totalTime = 3660;
    int hours = totalTime / 3600;
    int minutes = (totalTime % 3600) / 60;
    

    【讨论】:

      【解决方案2】:

      使用 运算符:

      (3660 / 60) % 60 = 1
      

      模数示例:

      0 % 3 = 0
      1 % 3 = 1
      2 % 3 = 2
      3 % 3 = 0
      4 % 3 = 1
      5 % 3 = 2
      6 % 3 = 0
      7 % 3 = 1
      ...
      

      看到这里的模式了吗?

      【讨论】:

        【解决方案3】:

        您可以使用 C div 函数通过单个函数调用获取商和余数。

        #include <stdio.h>
        #include <stdlib.h>  //div_t
        
        int main (int argc, char const *argv[])
        {
          int seconds = 3661;
          div_t hrmin, minsec;
          minsec = div(seconds, 60);
          hrmin = div(minsec.quot, 60);
        
          printf("%i seconds equals %i hours, %i minutes and %i seconds.\n", \
                 seconds, hrmin.quot, hrmin.rem, minsec.rem);
        
          return 0;
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-10-13
          • 2021-06-06
          • 2020-11-21
          • 2019-12-31
          相关资源
          最近更新 更多