6

ctime を使用して 10 桁の Unix タイムスタンプ (現在は文字列) をフォーマットしようとしています。

ただし、ctime() は、文字列ではなく、time_t 型のパラメータを想定しています。

ctime を使用する前に何をする必要がありますか? つまり、文字列を time_t に簡単に変換できますか?

4

2 に答える 2

10

文字列として 1346426869 のようなものがあり、それを time_t にしたいと言っていますか?

time_t raw_time = atoi("1346426869");
printf("current time is %s",ctime(&raw_time));

> current time is Fri Aug 31 11:27:49 2012
于 2012-09-05T17:33:39.447 に答える
0

time_tタイプは単なる整数です。エポックからの秒数です。最初に文字列を解析する必要があります。

ここから始める:

http://www.gnu.org/software/libc/manual/html_node/General-Time-String-Parsing.html#General-Time-String-Parsing

そこから前進します。

于 2012-09-05T17:06:00.027 に答える