Hàm strftime trả về số kí tự được đặt trong vùng nhớ

size_t strftime(char *strDest, size_t maxsize, const char *format, const struct tm *timeptr);

Parameter:

strDest: chuỗi kí tự đầu ra

maxsize: kích thước strDest (tính theo số kí tự)

format: định dạng của chuỗi kí tự

%a: Abbreviated weekday name

%A: Full weekday name

%b: Abbreviated month name

%B: Full month name

%c: Date and time representation appropriate for locale

%d: Day of month as decimal number (01 – 31)

%H: Hour in 24-hour format (00 – 23)

%I: Hour in 12-hour format (01 – 12)

%j: Day of year as decimal number (001 – 366)

%m: Month as decimal number (01 – 12)

%M: Minute as decimal number (00 – 59)

%p: Current locale’s A.M./P.M. indicator for 12-hour clock

%S: Second as decimal number (00 – 59)

%U: Week of year as decimal number, with Sunday as first day of week (00 – 53)

%w: Weekday as decimal number (0 – 6; Sunday is 0)

%W: Week of year as decimal number, with Monday as first day of week (00 – 53)

%x: Date representation for current locale

%X: Time representation for current locale

%y: Year without century, as decimal number (00 – 99)

%Y: Year with century, as decimal number

%z, %Z: Either the time-zone name or time zone abbreviation, depending on registry settings; no characters if time zone is unknown

%%: Percent sign

timeptr: thời gian lưu trong struct tm

Remark:

Hàm strftime( ) trả về số kí tự được đặt trong strDest

  • Nếu tổng số ki tự + 1 kí tựu NULL mà lớn hơn maxsize, hàm trả về 0 và nội dung của strDest không chính xác.

Ví dụ:

#include "stdio.h"
#include "conio.h"
#include "time.h"

void main( void )
{
    time_t ltime;
    struct tm *info;
    char str_time[120];
    time(&ltime);
    info = localtime(&ltime);
    strftime(str_time, 120, "Today is %A, %d/%m/%Y.", info);

    printf("\n%s", str_time);
    getch();
}

Kết quả:

Hàm strftime trả về số kí tự được đặt trong strDest
Hàm strftime trả về số kí tự được đặt trong strDest

Be the first to comment

Leave a Reply