CC语言获取当前时间并保存到字符串数组里
时间: 2024-11-17 22:28:10 浏览: 27
在C语言中,并没有内置函数可以直接获取当前日期和时间并将其保存到字符串数组里,因为C语言的标准库中并未提供这样的功能。但是你可以借助一些外部库如`time.h`和`strftime()`函数配合`stdio.h`来实现这个目标。
首先,你需要包含这两个头文件:
```c
#include <time.h>
#include <stdio.h>
```
然后,可以使用`time()`函数获取当前的时间戳(以秒为单位),再通过`strftime()`函数将它转换成字符串格式。下面是一个简单的例子:
```c
#define MAX_STR_SIZE 32 // 假设字符串最大长度为32
// 定义一个结构体来保存时间和字符串
struct TimeStr {
time_t timestamp;
char str[MAX_STR_SIZE];
};
// 获取当前时间并保存到字符串
void getCurrentTime(struct TimeStr *timeInfo) {
time_t current_time = time(0); // 获取当前时间戳
if (strftime(timeInfo->str, sizeof(timeInfo->str), "%Y-%m-%d %H:%M:%S", localtime(¤t_time))) {
// 如果格式化成功
timeInfo->timestamp = current_time; // 保留时间戳
} else {
printf("Failed to format the time!\n");
}
}
int main() {
struct TimeStr currentTime;
getCurrentTime(¤tTime);
// 现在你可以把currentTime.str存入字符串数组,比如:
char datetimeArray[3][MAX_STR_SIZE]; // 创建一个字符串数组
strcpy(datetimeArray[0], currentTime.str);
strcpy(datetimeArray[1], "Another string here...");
strcpy(datetimeArray[2], "Yet another string...");
return 0;
}
```
在这个示例中,`main()`函数创建了一个字符串数组`datetimeArray`来存储结果。记得在实际应用中根据需要调整数组大小和格式。
阅读全文