如何从C程序中获取系统时间的分钟数?我可以使用gettimeoftheday吗?如果有人有可以执行此操作的C程序,请分享,我是新手。

一些示例代码

#include <sys/time.h>
#include <time.h>
#include <stdlib.h>
#include <stdio.h>

int main(void)
{
  char buffer[30];
  struct timeval tv;

  time_t curtime;



  gettimeofday(&tv, NULL);
  curtime=tv.tv_sec;

  strftime(buffer,30,"%m-%d-%Y  %T.",localtime(&curtime));
  printf("%s%ld\n",buffer,tv.tv_usec);

  return 0;



}

最佳答案

您可以使用strftime仅获取分钟部分:

#include <time.h>
#include <stdlib.h>
#include <stdio.h>

int main(void)
{
  char buffer[0x100];
  time_t curtime;

  // Don't forget to check the return value !
  curtime = time(NULL);
  if (curtime == -1)
  {
    perror("time()");
    return 1;
  }

  strftime(buffer,0x100,"%M",localtime(&curtime));
  printf("minutes: %s\n", buffer);

  return 0;
}


此处无需使用gettimeofday,仅当您希望精度高于秒时才使用它。

10-04 20:20