如何在C中为date命令调用system()

时间:2015-07-13 12:09:41

标签: c shell

我一直试图调用库函数 system()来调用C程序中的date

它没有显示任何输出。

int main()    
{    
 char cmd[20];
 strcpy(cmd, "date");
 system(cmd);
 return(0);
}

2 个答案:

答案 0 :(得分:4)

使用gettimeofday()获取所有日期时间或其他内容。例如:

#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;



}

答案 1 :(得分:2)

您可以使用简单的ctime()功能。它会打印which day of week month day of month time,然后year

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

    int main()
       {
          time_t mytime;
          mytime = time(NULL);
          printf(ctime(&mytime));

          return 0;
        }

该函数返回一个包含日期和时间信息的C字符串。它将定时器指向的time_t对象转换为C字符串。