文章目录
一、主函数逻辑结构
1、启动无限循环
2、接收用户操作值
3、主函数代码示例
二、宏定义声明
三、显示操作菜单
一、主函数逻辑结构
在 main 函数中 , 启动一个无限循环 , 不断的接收用户的操作选项 , 根据用户输入的不同的选项 , 执行不同的操作 ;
用户输入的选项 : 0 00 退出 , 1 11 写出配置 , 2 22 读取配置 ;
1、启动无限循环
启动无限循环 : 主函数执行后 , 使用
for (;;)
启动无限循环 , 在循环中 , 显示用户输入菜单选项 , 提醒用户输入操作值 ;
2、接收用户操作值
接收用户操作值 : 然后根据用户的不同输入 , 进行不同的操作 ;
用户输入 0 00 则退出程序 ;
用户输入 1 11 向配置文件 写出 / 更新 键值对数据 ;
用户输入 2 22 从配置文件 中 根据 键 查询 键值对数据 ;
3、主函数代码示例
主函数代码示例 :
/** * @brief main 主函数入口 */ void main() { // 用户输入的选项 , 0 退出 , 1 写出配置 , 2 读取配置 int user_input; // 启动无限循环 for (;;) { //显示一个菜单 show_menu(); // 从命令行接收 int 值 , 作为菜单选择 scanf("%d", &user_input); // 根据用户的不同输入 , 进行不同的操作 switch (user_input) { case 1: // 写出 或 更新配置项 write_update_config(); break; case 2: // 读取配置项 read_config(); break; case 0: // 退出程序 exit(0); default: // 无法识别的操作 , 提示错误操作 , 继续 printf("Input Error !\n"); break; } } // 执行完毕会后暂停 system("pause"); return ; }
二、宏定义声明
在程序中 , 常用的值 , 推荐使用宏定义进行声明 , 这样可以避免魔法数出现 ;
// 配置文件名称
#define CONFIG_FILE_NAME "D:/File/config.ini"
1
2
三、显示操作菜单
在主函数的无限循环中 , 每次循环 , 都要显示操作菜单 , 提醒用户应该输入的内容 ;
用户输入的选项 : 0 00 退出 , 1 11 写出配置 , 2 22 读取配置 ;
/** * @brief show_menu * 显示应用操作菜单 */ void show_menu() { printf("=============================\n"); printf("1 Write Config File\n"); printf("2 Read Config File\n"); printf("0 Quit\n"); printf("=============================\n"); }