# log4cc **Repository Path**: doublebyte/log4cc ## Basic Information - **Project Name**: log4cc - **Description**: a log utils for c++ - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2023-01-11 - **Last Updated**: 2024-01-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # log4cc # 介绍 此仓库为c++的日志库 特性1:支持多线程并发输出 支特性2:持类c的写法, 例如 CLOGI("hello %d", 11); 支特性3:持类python的写法, 例如 LOGI("hello", "world", 11, 1.0); 两种写法在c++文件中可以混用,最终的输出是一样的. 对外提供两个头文件 log.h clog.h log.h是针对c++的头文件,内部包含了clog.h,所以在c++中可以使用类c的写法. clog.h是针对c的头文件,c只能使用此头文件. # 使用方法 在使用前必须调用Log4ccInit()函数来初始化日志库,否则无法输出. 在程序的结尾调用Log4ccFree()函数来释放日志库所占用的资源. ``` cpp #include int main() { Log4ccInit(); LOGI("hello info", "hello", "world", 1, 3, 'a'); LOGD("hello debug", "hello", "world", 1, 3, 'a'); LOGW("hello warning", "hello", "world", 1, 3, 'a'); LOGE("hello error", "hello", "world", 1, 3, 'a'); Log4ccFree(); return 0; } ``` ``` c #include int main() { Log4ccInit(); CLOGI("hello info hello world %d %d %c", 1, 3, 'a'); CLOGD("hello debug hello world %d %d %c", 1, 3, 'a'); CLOGW("hello warning hello world %d %d %c", 1, 3, 'a'); CLOGE("hello error hello world %d %d %c", 1, 3, 'a'); Log4ccFree(); return 0; } ``` ![main_test](./figures/main_test.png) # 如何编译 make 产物会生成到out下