目录
strftime()函数
函数原型
头文件
功能
返回值
参数
案例
结语
strftime()函数
函数原型
size_t strftime(char *s, size_t max, const char *format, const struct tm *tm);
头文件
#include <time.h>
功能
用于日期和时间格式化的函数,它允许你将一个
tm
结构体表示的时间转换成一个基于指定格式的字符串。
返回值
写入到第一个参数 s 中的的字符数,不包括终止的空字符。当格式化字符串大小大于s 时,返回0。
参数
char* s:
这是指向目标字符串的指针,结果将被存储在这里。
size_t max:
目标字符串的最大长度,包括终止的空字符。
char* format:
一个字符串,指定输出的格式。
const struct tm* tm:
指向
struct tm
的指针,该结构体包含要格式化的时间信息。
struct tm 结构体内容点击查看
案例
#include <iostream> #include <time.h> using namespace std; int main() { time_t t = time(nullptr); char buf[40]; struct tm *timeinfo; timeinfo = localtime(&t); int n = strftime(buf, sizeof buf, "%A, %d %B %Y %X", timeinfo); cout << "目标字符串大小" << sizeof buf << endl; cout << "实际写入目标字符串大小" << n << endl; cout << "写入后,目标字符串中内容" << buf << endl; }
程序执行结果
👇👇👇👇👇👇👇👇👇👇👇👇👆👆👆👆👆👆👆
目标字符串大小40
实际写入目标字符串大小29
写入后,目标字符串中内容Sunday, 23 June 2024 21:00:01
👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆👆
结语
有什么问题或者疑问欢迎评论区讨论,或者私信。
感谢阅读