struct tm 格式化时间
时间: 2023-08-09 14:05:14 浏览: 143
struct tm 是C语言中的一个结构体,用于表示一个时间。如果要将 struct tm 格式化为字符串,可以使用 strftime() 函数。
下面是一个示例代码:
```c
#include <stdio.h>
#include <time.h>
int main() {
time_t now = time(NULL);
struct tm *t = localtime(&now);
char buffer[80];
strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", t);
printf("当前时间是:%s\n", buffer);
return 0;
}
```
在这个示例中,首先获取当前时间,然后使用 localtime() 函数将其转换为 struct tm 结构体。接着使用 strftime() 函数将 struct tm 格式化为字符串,最后打印输出即可。"%Y-%m-%d %H:%M:%S" 是一个格式化字符串,用于指定输出的格式。具体的格式化字符串可以参考 strftime() 函数的文档。
相关问题
struct tm *t = localtime(&now); 格式化时间
在 C 语言中,可以使用 `struct tm` 结构体来表示一个时间,其中包含了年、月、日、时、分、秒等信息。而要将一个时间格式化成一个字符串,可以使用 `strftime()` 函数。下面是一个示例代码:
```c
#include <stdio.h>
#include <time.h>
int main() {
time_t now = time(NULL);
struct tm *t = localtime(&now);
char buffer[80];
strftime(buffer, sizeof(buffer), "%Y-%m-%d %H:%M:%S", t);
printf("当前时间是:%s\n", buffer);
return 0;
}
```
在这个示例中,首先获取当前时间,然后使用 `localtime()` 函数将其转换为本地时间(`struct tm` 结构体)。接着使用 `strftime()` 函数将 `struct tm` 格式化为字符串,最后打印输出即可。`"%Y-%m-%d %H:%M:%S"` 是一个格式化字符串,用于指定输出的格式。具体的格式化字符串可以参考 `strftime()` 函数的文档。
struct tm *t = localtime(&now); 格式化时间小时分钟
要将时间格式化为小时和分钟的字符串,可以在 `strftime()` 函数的格式化字符串中使用 `%H` 表示小时,使用 `%M` 表示分钟。下面是示例代码:
```c
#include <stdio.h>
#include <time.h>
int main() {
time_t now = time(NULL);
struct tm *t = localtime(&now);
char buffer[80];
strftime(buffer, sizeof(buffer), "%H:%M", t);
printf("当前时间是:%s\n", buffer);
return 0;
}
```
在这个示例中,我们只保留了小时和分钟,并使用 `strftime()` 函数将其格式化为字符串。`"%H:%M"` 是一个格式化字符串,用于指定输出的格式。最后打印输出即可。
阅读全文