0

私が見つけたプログラムを投稿しています。誰か説明してくれませんか

  1. 「0x7FFFFFFF」とは?
  2. ctime() 関数はどのように機能しますか?

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

int main()
{ 
     time_t Variable = 0x7FFFFFFF; 
     printf("Variable value is = %s \n", ctime(&Variable) ); 
     return 0; 
} 
4

3 に答える 3

0

ctimetime_t値を文字列に変換します。ウィキから

算術型としての time_t ですが、特定の型を指定していません

0x7FFFFFFF10 進数では21474836472^31 − 1 です。32 ビットの符号付き整数で表現できる最大値。

于 2013-09-27T07:03:03.610 に答える
0

0x7FFFFFFF32 ビットの符号付き整数で表現できる最大値です。time_t符号付き整数型の場合、32 ビット システムで世界の終わりをctime(&Variable)表します。そこから未定義の世界へ。;-)

しかし、64 ビット型の の使用により、終了延期さtime_tれました。

于 2013-09-27T07:04:50.930 に答える
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;
}

最初に現在の時刻を rawtime 変数に保存し、次を使用time()して人間が読める文字列で表示しますctime()

于 2013-09-27T07:06:05.383 に答える