strftime c++
时间: 2024-01-02 13:22:10 浏览: 127
时间C++程序
在C++中,strftime()函数用于将给定的日期和时间从给定的日历时间转换为以空结尾的多字节字符串。它的原型如下:
```cpp
size_t strftime(char* str, size_t count, const char* format, const struct tm* timeptr);
```
其中,参数说明如下:
- `str`:指向一个字符数组的指针,用于存储转换后的字符串。
- `count`:指定存储转换后的字符串的最大长度。
- `format`:指定转换的格式字符串,用于指定输出的日期和时间的格式。
- `timeptr`:指向一个`tm`结构体的指针,包含了要转换的日期和时间。
下面是一个示例,演示了如何使用strftime()函数将日期和时间转换为字符串:
```cpp
#include <iostream>
#include <ctime>
int main() {
std::time_t now = std::time(nullptr);
struct std::tm* timeinfo = std::localtime(&now);
char buffer[80];
std::strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", timeinfo);
std::cout << "Formatted date and time: " << buffer << std::endl;
return 0;
}
```
上述代码中,我们首先获取当前的日历时间,并使用`localtime()`函数将其转换为`tm`结构体。然后,我们使用`strftime()`函数将日期和时间按照指定的格式转换为字符串,并将结果存储在`buffer`数组中。最后,我们将转换后的字符串输出到标准输出。
阅读全文