C语言标准宏__DATE__格式化YY/MM/DD,不能用C语言标准库函数
时间: 2023-10-25 21:22:47 浏览: 107
日期格式化函数
可以使用以下代码实现:
```
#include <stdio.h>
#define DATE __DATE__
int main()
{
char date[9] = {DATE[7], DATE[8], '/', DATE[0], DATE[1], '/', DATE[4], DATE[5], '\0'};
printf("%s", date);
return 0;
}
```
解释一下代码:
- `__DATE__` 是 C 语言标准宏,表示编译时的日期字符串,格式为 "MMM DD YYYY"。
- `DATE` 宏定义将 `__DATE__` 字符串保存到 `DATE` 变量中。
- `date` 数组用于保存格式化后的日期字符串。
- `DATE` 字符串中第 0、1、4、5、7、8 个字符分别是月、日、年的数字和分隔符。
- 使用数组下标将这些字符提取出来,按照 "YY/MM/DD" 的格式保存到 `date` 数组中。
- 最后使用 `printf` 函数输出格式化后的日期字符串。
注意,这种实现方式假设 `__DATE__` 的格式不会改变,如果改变了,代码可能会出错。
阅读全文