Skip to content

Latest commit

 

History

14 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Calendar

C++ 实现控制台万年历:方向键翻月翻年,周末着色 + 今天高亮,Space 键一键回到今天。


效果预览

  2026 年 8 月

  日  一  二  三  四  五  六
                           1
   2   3   4   5   6   7   8
   9  10  11  12  13  14  15
  16  17  18  19  20  21  22
  23  24  25  26  27  28  29
  30  31

实际运行时:周六、周日显示蓝色,今天显示绿色(纯文本预览无法展示颜色)。


功能

  • 月历显示,星期表头,日期按真实星期对齐
  • Sakamoto 算法计算星期
  • 自动处理闰年与各月天数
  • ← → 翻月,↑ ↓ 翻年,Space 回到今天,Esc 退出
  • 周末蓝色,今天绿色
  • 支持公元 1 年及以后的任意年份,翻到边界自动停住
  • 启动即显示当前年月(默认构造 + 委托构造)
  • 非法月份/年份抛出异常,红色错误提示

快速开始

git clone https://github.com/DenJeb/cpp-Calendar.git
cd cpp-Calendar
mkdir build && cd build
cmake ..
cmake --build .
./calendar

需要 CMake ≥ 3.16,g++ 支持 C++23(MinGW)。

仅支持 Windows:项目使用 <conio.h> 和 Windows 控制台 API(颜色、清屏、窗口标题)。

或直接用 g++:g++ -std=c++23 main.cpp src/calendar.cpp src/console.cpp -I include -o calendar.exe


项目结构

Calendar/
├── CMakeLists.txt     # CMake 构建配置
├── main.cpp           # 入口 + 按键监听
├── include/
│   ├── calendar.h     # Calendar 类声明
│   └── console.h      # 控制台工具层声明(颜色/清屏/标题)
├── src/
│   ├── calendar.cpp   # Calendar 类实现
│   └── console.cpp    # 控制台工具层实现
├── README.md
├── LICENSE
└── .gitignore

操作

按键 功能
← 上个月
→ 下个月
↑ 上一年
↓ 下一年
Space 回到今天
Esc 退出

About

C++ 实现控制台万年历:方向键翻月翻年,周末着色 + 今天高亮,Space 键一键回到今天。

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages