#define _GNU_SOURCE
#include <string.h>
#include <stdlib.h>
#include <locale.h>
int main(void)
{
static char *server = NULL;
static double delay = 1.356e-32;
static char *username = NULL;
static long int debug = 1;
};
#ifdef LC_MESSAGES
setlocale(LC_MESSAGES, "");
setlocale(LC_CTYPE, "");
#endif
server = strdup("gazonk");
cfg = cfg_init(opts, 0);
cfg_parse(cfg, "simple.conf");
printf("verbose: %s\n", verbose ? "true" : "false");
printf("server: %s\n", server);
printf("username: %s\n", username);
printf("debug: %ld\n", debug);
printf("delay: %G\n", delay);
printf("setting username to 'foo'\n");
cfg_setstr(cfg, "user", "foo");
printf("username: %s\n", username);
{
FILE *fp = fopen("simple.conf.out", "w");
cfg_print(cfg, fp);
fclose(fp);
}
cfg_free(cfg);
free(server);
free(username);
return 0;
}
A configuration file parser library.
#define CFG_SIMPLE_FLOAT(name, svalue)
Initialize a "simple" floating point option (see documentation for CFG_SIMPLE_STR for more informatio...
Definition confuse.h:478
#define CFG_SIMPLE_BOOL(name, svalue)
Initialize a "simple" boolean option (see documentation for CFG_SIMPLE_STR for more information).
Definition confuse.h:511
cfg_bool_t
Boolean values.
Definition confuse.h:232
#define CFG_END()
Terminate list of options.
Definition confuse.h:574
#define CFG_SIMPLE_INT(name, svalue)
Initialize a "simple" integer option (see documentation for CFG_SIMPLE_STR for more information).
Definition confuse.h:445
#define CFG_SIMPLE_STR(name, svalue)
Initialize a "simple" string option.
Definition confuse.h:410
Data structure holding information about an option.
Definition confuse.h:309
Data structure holding information about a "section".
Definition confuse.h:252