asctime _wasctime
轉換tm時間為字元字串的結構。這些函式更安全版本都可使用; see asctime_s _wasctime_s.
char *asctime(
const struct tm *timeptr
);
wchar_t *_wasctime(
const struct tm *timeptr
);
參數
- timeptr
時間/日期結構。
傳回值
asctime字元的字串結果 ; 傳回的指標 _wasctime寬字元字串結果中傳回的指標。沒有任何錯誤的傳回值。
備註
這些函式更安全版本都可使用; 請參閱 asctime_s、 _wasctime_s。
asctime函式將轉換為字元字串的結構儲存一次。timeptr值通常取自呼叫gmtime或localtime,兩者都傳回變數的指標, tm在時間內所定義的結構。H.
timeptr 成員 |
值 |
---|---|
tm_hour |
自午夜開始計算 (0–23) 的小時 |
tm_isdst |
正數,如果日光節約時間生效。 日光節約時間沒有作用 ; 如果為 0 如果日光節約時間的狀態是未知的,負值。C 執行階段程式庫會假設執行計算的日光節約時間 (DST) 的美國的規則。 |
tm_mday |
月 (1–31) 中的日 |
tm_min |
(0–59) 整點小時之後的分鐘 |
tm_mon |
月 (0–11; 年 1 月 = 0) |
tm_sec |
分鐘 (0–59) 後的秒數 |
tm_wday |
一天的週 (0–6; 星期日 = 0) |
tm_yday |
(0–365 ; 年中的日 1 月 1 日 = 0) |
tm_year |
年 (目前年份減 1900年) |
根據當地時間的區域設定時也調整轉換後的字元字串。設定當地時間的相關資訊,請參閱時間, _ftime,以及 本地時間 函式和 _tzset 函式定義的時區環境和全域變數的相關資訊。
所產生的字串結果asctime包含完全 26 個字元,其格式Wed Jan 02 02:03:55 1980\n\0。使用 24 小時制。所有欄位都具有固定寬度。新行字元和 null 字元會佔用最後兩個字串的位置。asctime使用單一、 以靜態方式配置的緩衝區來容納傳回的字串。每次呼叫此函式會終結之前呼叫的結果。
_wasctime寬字元版本的asctime。_wasctime與asctime其他方式完全相同。
這些函式會驗證它們的參數。如果timeptr是空值的指標,或如果它不包含 out 的範圍值,不正確的參數處理常式會叫用,如所述參數驗證。如果執行則允許繼續執行,則函數會傳回NULL ,並設定errno到EINVAL。
泛用文字常式對應
TCHAR。H 常式 |
_UNICODE & 未定義的 _MBCS |
定義的 _MBCS |
定義 _unicode 之後 |
---|---|---|---|
_tasctime |
asctime |
asctime |
_wasctime |
需求
常式 |
所需的標頭 |
---|---|
asctime |
<time.h> |
_wasctime |
<time.h> 或者 <wchar.h> |
範例
此程式會將系統時間放在 [長整數aclock,將其轉譯成結構newtime ,然後將它轉換成字串形式為,輸出,使用asctime函式。
// crt_asctime.c
// compile with: /W3
#include <time.h>
#include <stdio.h>
int main( void )
{
struct tm *newTime;
time_t szClock;
// Get time in seconds
time( &szClock );
// Convert time to struct tm form
newTime = localtime( &szClock );
// Print local time as a string.
printf_s( "Current date and time: %s", asctime( newTime ) ); // C4996
// Note: asctime is deprecated; consider using asctime_s instead
}
.NET Framework 對等用法
請參閱
參考
ctime、 _ctime32、 _ctime64、 _wctime、 _wctime32、 _wctime64