mirror of
https://github.com/LHY0125/PathEditor.git
synced 2026-05-09 18:02:52 +08:00
feat: 新增安全字符串处理和日志系统模块
- 添加 safe_string 模块,提供安全的字符串复制、拼接和复制功能 - 添加 logger 模块,支持多级别日志记录和文件输出 - 添加 error_code 模块,定义统一的错误代码枚举 - 添加 layout_config 模块,定义布局配置结构 - 更新 CMakeLists.txt 包含新增的源文件
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
#ifndef LAYOUT_CONFIG_H
|
||||
#define LAYOUT_CONFIG_H
|
||||
|
||||
// 布局配置结构体
|
||||
typedef struct {
|
||||
int vbox_gap; // 垂直布局间距
|
||||
int vbox_margin_width; // 垂直布局外边距宽度
|
||||
int vbox_margin_height; // 垂直布局外边距高度
|
||||
int hbox_gap; // 水平布局间距
|
||||
int hbox_margin_width; // 水平布局外边距宽度
|
||||
int hbox_margin_height; // 水平布局外边距高度
|
||||
int button_width; // 按钮宽度
|
||||
int button_height; // 按钮高度
|
||||
} LayoutConfig;
|
||||
|
||||
// 默认布局配置
|
||||
extern const LayoutConfig DEFAULT_LAYOUT;
|
||||
|
||||
#endif // LAYOUT_CONFIG_H
|
||||
@@ -0,0 +1,19 @@
|
||||
#ifndef ERROR_CODE_H
|
||||
#define ERROR_CODE_H
|
||||
|
||||
typedef enum {
|
||||
ERR_OK = 0, // 成功
|
||||
ERR_FAILED = -1, // 失败
|
||||
ERR_NULL_PTR = -2, // 空指针
|
||||
ERR_OUT_OF_MEMORY = -3, // 内存不足
|
||||
ERR_FILE_NOT_FOUND = -4, // 文件不存在
|
||||
ERR_PERMISSION_DENIED = -5, // 权限拒绝
|
||||
ERR_INVALID_FORMAT = -6, // 无效格式
|
||||
ERR_REGISTRY_FAILED = -7, // 注册表操作失败
|
||||
ERR_NOT_FOUND = -8, // 未找到
|
||||
ERR_EXISTS = -9 // 已存在
|
||||
} ErrorCode;
|
||||
|
||||
const char* error_code_to_string(ErrorCode code);
|
||||
|
||||
#endif // ERROR_CODE_H
|
||||
@@ -0,0 +1,33 @@
|
||||
#ifndef LOGGER_H
|
||||
#define LOGGER_H
|
||||
|
||||
// 日志级别
|
||||
typedef enum {
|
||||
LOG_LEVEL_DEBUG, // 调试日志级别
|
||||
LOG_LEVEL_INFO, // 信息日志级别
|
||||
LOG_LEVEL_WARN, // 警告日志级别
|
||||
LOG_LEVEL_ERROR // 错误日志级别
|
||||
} LogLevel;
|
||||
|
||||
// 初始化日志系统
|
||||
void log_init(const char *log_file, LogLevel level);
|
||||
|
||||
// 销毁日志系统
|
||||
void log_destroy(void);
|
||||
|
||||
// 日志函数
|
||||
void log_debug(const char *fmt, ...);
|
||||
|
||||
// 信息日志函数
|
||||
void log_info(const char *fmt, ...);
|
||||
|
||||
// 警告日志函数
|
||||
void log_warn(const char *fmt, ...);
|
||||
|
||||
// 错误日志函数
|
||||
void log_error(const char *fmt, ...);
|
||||
|
||||
// 设置日志级别
|
||||
void log_set_level(LogLevel level);
|
||||
|
||||
#endif // LOGGER_H
|
||||
@@ -0,0 +1,15 @@
|
||||
#ifndef SAFE_STRING_H
|
||||
#define SAFE_STRING_H
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
// 安全字符串操作函数
|
||||
char* safe_strcpy(char *dst, size_t dst_size, const char *src);
|
||||
|
||||
// 安全字符串拼接函数
|
||||
char* safe_strcat(char *dst, size_t dst_size, const char *src);
|
||||
|
||||
// 安全字符串复制函数
|
||||
char* safe_strdup(const char *src);
|
||||
|
||||
#endif // SAFE_STRING_H
|
||||
Reference in New Issue
Block a user