std::strftime
在标头
<ctime>
定义
|
||
std::size_t
strftime( char* str, std::size_t count,
const char* format, const std::tm* time
);
|
||
按照格式字符串 format
,转换来自给定的日历时间 time
的日期和时间信息,为空终止多字节字符串 str
。最多写入 count
字节。
参数
str | - | 指向输出用的字符数组首元素的指针 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
count | - | 写入的最大字节数 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
format | - | 指向空终止多字节字符串的指针,字符串指定转换格式。
格式字符串由零或更多个说明符和通常字符(除
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
time | - | 指向待转换日期和时间信息的指针 |
返回值
成功时,返回写入 str
所指向的字符数组的字节数,不包含终止 '\0' 。若在能存储整个字符串前抵达 count
,则返回 0 ,写入内容是不确定的。
示例
#include <ctime> #include <iostream> #include <locale> int main() { std::locale::global(std::locale("ja_JP.utf8")); std::time_t t = std::time(NULL); char mbstr[100]; if (std::strftime(mbstr, sizeof(mbstr), "%A %c", std::localtime(&t))) { std::cout << mbstr << '\n'; } }
输出:
火曜日 2011年12月27日 17時39分03秒
See also
转换 tm 对象为文本表示 (函数) |
|
转换 time_t 对象为文本表示 (函数) |
|
转换 tm 对象为定制的宽字符串文本表示 (函数) |
|
(C++11)
|
按照指定格式格式化并输出日期/时间值 (函数模板) |