该程序中的ctime功能如何工作?

时间:2013-09-27 06:54:30

标签: c ctime time.h

我发布了一个我遇到的程序。任何人都可以解释我

  1. “0x7FFFFFFF”是什么意思?
  2. ctime()函数如何工作?

  3. #include<stdio.h>
    #include <time.h> 
    
    int main()
    { 
         time_t Variable = 0x7FFFFFFF; 
         printf("Variable value is = %s \n", ctime(&Variable) ); 
         return 0; 
    } 
    

3 个答案:

答案 0 :(得分:0)

ctimetime_t值转换为字符串。来自Wiki

  

time_t作为算术类型,但未指定任何特定类型

0x7FFFFFFF2147483647,十进制等于2 ^ 31 - 1.最大值,可以用32位有符号整数表示。

答案 1 :(得分:0)

0x7FFFFFFF是可以用32位有符号整数表示的最大值。如果time_t是有符号整数类型,则ctime(&Variable)表示32位系统上的end of the world。我们将从那里进入 undefined world 。 ; - )

但是, end 通过使用time_t的64位类型 postponed

答案 2 :(得分:0)

通常以下列方式使用ctime

/* ctime example */
#include <stdio.h>      /* printf */
#include <time.h>       /* time_t, time, ctime */

int main ()
{
  time_t rawtime;

  time (&rawtime);
  printf ("The current local time is: %s", ctime (&rawtime));

  return 0;
}

我们首先使用time()将当前时间保存在rawtime变量中,然后使用ctime()

将其显示在人类可读的字符串中