Love beautiful code? We do too.
Hàm size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr)
định dạng thời gian được biểu diễn trong cấu trúc timeptr theo các qui tắc định dạng được định nghĩa trong format và được lưu trữ vào trong str.
Dưới đây là phần khai báo cho strftime() trong C:
size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr)
Tham số
Specifier | Thay thế cho | Ví dụ |
---|---|---|
%a | Tên ngày trong tuần viết tắt | Sun |
%A | Tên ngày trong tuần đầy đủ | Sunday |
%b | Tên tháng viết tắt | Mar |
%B | Tên tháng đầy đủ | March |
%c | Biểu diễn date và time | Sun Aug 19 02:56:02 2012 |
%d | Ngày trong tháng (01-31) | 19 |
%H | Giờ, trong định dạng 24h (00-23) | 14 |
%I | Giờ, trong định dạng 12h (01-12) | 05 |
%j | Ngày trong năm (001-366) | 231 |
%m | Tháng, dưới dạng biểu diễn số (01-12) | 08 |
%M | Phút (00-59) | 55 |
%p | AM hoặc PM | PM |
%S | Giây (00-61) | 02 |
%U | Số tuần, có ngày Chủ nhật đầu tiên là ngày đầu tiên của tuần (00-53) | 33 |
%w | Ngày trong tuần dưới dạng biểu diễn số (0-6) | 4 |
%W | Số tuần, có ngày thứ Hai đầu tiên là ngày đầu tiên của tuần (00-53) | 34 |
%x | Biểu diễn date | 08/19/12 |
%X | Biểu diễn time | 02:50:06 |
%y | Năm, biểu diễn dưới dạng hai số cuối (00-99) | 01 |
%Y | Năm | 2012 |
%Z | Tên Timezone | CDT |
%% | Ký hiệu % | % |
timeptr -- là con trỏ trỏ tới giá trị time_t biểu diễn một calendar time, mà được chia nhỏ thành các thành phần với cấu trúc:
struct tm {
int tm_sec; /* biểu diễn giây, từ 0 tới 59 */
int tm_min; /* biểu diễn phút, từ 0 tới 59 */
int tm_hour; /* biểu diễn giờ, từ 0 tới 23 */
int tm_mday; /* biểu diễn ngày của tháng, từ 1 tới 31 */
int tm_mon; /* biểu diễn tháng, từ 0 tới 11 */
int tm_year; /* biểu diễn năm, bắt đầu từ 1900 */
int tm_wday; /* ngày trong tuần, từ 0 tới 6 */
int tm_yday; /* ngày trong năm, từ 0 tới 365 */
int tm_isdst; /* biểu diễn Daylight Saving Time */
};
Trả về giá trị
Nếu chuỗi kết quả có kích cỡ nhỏ hơn kích cỡ các ký tự (bao gồm ký tự null kết thúc), thì toàn bộ ký tự được sao chép tới str (không bao gồm ký tự null kết thúc) được trả về. Nếu không, hàm trả về 0.
#include <stdio.h>
#include <time.h>
int main ()
{
time_t rawtime;
struct tm *info;
char buffer[80];
time( &rawtime );
info = localtime( &rawtime );
strftime(buffer,80,"%x - %I:%M%p", info);
printf("Date & time da dinh dang theo ham strftime la: \n|%s|\n", buffer );
return(0);
}
Biên dịch và chạy chương trình C trên sẽ cho kết quả:
Xem thêm:
Hoclaptrinh.vn © 2017
From Coder With
Unpublished comment
Viết câu trả lời