Files
HW_Lib/lib/utils/inc/argpase.h
JiXieShi 040b9be6b9 feat(sim/oled): 移除未使用的头文件 "graphics.h" 和 "conio.h"
 feat(lib/CMakeLists.txt): 添加 LUI 库支持

 feat(lib/utils/inc/argpase.h): 引入 "stdbool.h" 以支持布尔类型

 feat(sim/display/sim_display.cpp): 重新引入 "graphics.h" 和 "conio.h" 以修复依赖

 feat(sim/lvgl/lv_port_indev.cpp): 移除未使用的头文件 "graphics.h" 和 "easyx.h"

 feat(main.c): 添加 LUI 库支持以增强功能

 feat(lib/lui/lame_ui.c): 新增 LUI 库实现以支持 UI 组件
2024-12-19 22:49:08 +08:00

47 lines
865 B
C
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef ARGPASE_H
#define ARGPASE_H
#ifdef __cplusplus
extern "C" {
#endif
#include "stdbool.h"
typedef char OptId;
typedef struct Option {
char *name;
OptId id;
} Option;
typedef struct OptList {
struct OptList *next;
Option *Option;
} OptList;
extern char *Optarg, *Optstr;
//索引指示可手动重载为0
extern int Optindex;
//选项链表创建
OptList *Options_Creat(char *opt, OptId index);
//使用选项结构体创建
OptList *Options_CreatOpt(Option *opt);
//添加
void Options_Add(OptList *opts, OptList *opt);
//删除
bool Options_Del(OptList *opts, char *opt);
//打印选项和id
void Options_Print(OptList *opts);
//开始匹配参数
OptId Options_Load(OptList *opts, char *argv[], size_t argc);
//字符串转参数数组
size_t Str_To_Args(char *str, char *argv[]);
#ifdef __cplusplus
}
#endif
#endif //ARGPASE_H