Beschreibe hier die neue Seite. |
== DotConf == Eine Bibliothek um Konfigurationsdateien leichter verarbeiten zu können. [[Code] #include <stdio.h> #include <string.h> #include <dotconf.h> /* vim:set ts=4: vim:set shiftwidth=4: */ static {DOTCONF CB}?(cb_list); static {DOTCONF CB}?(cb_str); static const configoption_t options[] = { {"{MP FS OPTION}?", {ARG STR}?, cb_str, NULL, {CTX ALL}? }, {"{MP PROXY}?", {ARG LIST}?, cb_list, NULL, {CTX ALL}?}, {"{MP OUTPUT}?", {ARG STR}?, cb_str, NULL, {CTX ALL}?}, {LAST OPTION}? }; int main(int argc, char **argv) { configfile_t *configfile; configfile = dotconf_create("simple.conf", options, NULL, {CASE INSENSITIVE}?); if (!configfile) { fprintf(stderr, "Error opening config file\n"); return 1; } if (dotconf_command_loop(configfile) == 0) fprintf(stderr, "Error reading config file\n"); dotconf_cleanup(configfile); return 0; } {DOTCONF CB}?(cb_list) { int i; printf("%s:%ld: %s: [ ", cmd->configfile->filename, cmd->configfile->line, cmd->name); for (i = 0; i < cmd->arg_count; i++) printf("(%d) %s ", i, cmd->data.list[i]); printf("]\n"); return NULL; } {DOTCONF CB}?(cb_str) { printf("%s:%ld: %s: [%s]\n", cmd->configfile->filename, cmd->configfile->line, cmd->name, cmd->data.str); return NULL; } ] |
DotConf | ![]() |
Eine Bibliothek um Konfigurationsdateien leichter verarbeiten zu können.
![]() |
|