阅读量:120
在C++中,strptime函数用于将日期时间字符串解析为tm结构体,其原型如下:
char *strptime(const char *buf, const char *format, struct tm *tm);
参数说明:
- buf:包含日期时间字符串的C字符串
- format:日期时间字符串的格式
- tm:指向tm结构体的指针,用于存储解析后的日期时间信息
函数返回值:
- 如果解析成功,则返回指向字符串buf中未解析部分的指针
- 如果解析失败,则返回NULL
示例:
#include
#include
int main() {
const char *dateStr = "2022-01-01 12:30:45";
struct tm tm;
char *endPtr = strptime(dateStr, "%Y-%m-%d %H:%M:%S", &tm);
if (endPtr != NULL) {
std::cout << "Year: " << tm class="hljs-number">1900 << std class="hljs-string">"Month: " << tm class="hljs-number">1 << std class="hljs-string">"Day: " << tm class="hljs-string">"Hour: " << tm class="hljs-string">"Minute: " << tm class="hljs-string">"Second: " << tm class="hljs-keyword">else {
std::cout << "Parsing failed." << std class="hljs-keyword">return 0;
}
在上面的示例中,我们使用strptime函数将日期时间字符串"2022-01-01 12:30:45"按照"%Y-%m-%d %H:%M:%S"的格式解析,并将解析后的日期时间信息存储在tm结构体中。然后输出解析后的年、月、日、时、分、秒信息。