聚合图床,专业的图片托管服务,支持多种上传方式,多云存储备份,Excel批量导入导出。

2026年03月25日

C程序经典结构化配置文件处理库libconfig使用指南

库本身支持C/C++,本文以C程序为例

"对于需要读取外部配置文件的C/C++程序,使用libconfig库就非常合适, 本文就来聊聊C语言经典结构化配置文件处理库libconfig的安装与使用。"

一,安装libconfig

对于Ubuntu系统,直接使用下面的命令安装即可

sudo apt install libconfig-dev

二,在你的C程序中使用libconfig

我的示例配置文件如下:

config.cfg

# 应用配置
app_config:{
  version = "1.0";

}

引入头文件

#include <libconfig.h>
config_t cfg;
config_init(&cfg);

    // 读取配置文件
    if (!config_read_file(&cfg, app_config_file))
    {
        fprintf(stderr, "%s:%d: %s\n", config_error_file(&cfg),
                config_error_line(&cfg), config_error_text(&cfg));
        config_destroy(&cfg);
    }

    const char *version;
    config_lookup_string(&cfg, "app_config.version", &version);

    config_setting_t *flow_list = config_lookup(&cfg, "app_config.flows");
    int count = config_setting_length(flow_list);

    for (int i = 0; i < count; i++)
    {
        config_setting_t *dev = config_setting_get_elem(flow_list, i);
        const char *value;
        config_setting_lookup_string(dev, "src_ip", &value);
        printf("id: %s\n", value);
    }

    printf("%s\n", version);
    printf("%d\n", count);

    config_destroy(&cfg);
}
落秋cc
钱塘江上潮信来,今日方知我是我。
FACEBOOKBILIBILISTEAMGITHUB