carg-parse/README.md

35 lines
788 B
Markdown
Raw Normal View History

2023-05-11 13:52:22 +00:00
# carg-parse
Basic C library to easily parse arguments
# Usage
for a full example of usage look at test.c
Call
`carg_parse(int argc, char** argv)`
it will return a struct containing:
2023-05-11 19:50:16 +00:00
```c
2023-05-11 13:52:22 +00:00
typedef struct
{
char* exec_name;
uint32_t values_len;
char** values;
uint32_t lv_len;
char** lv_labels;
char** lv_values;
} carg_parse_data;
```
Values is an array of all of the free standing arguments passed in
LV is a dictionary, labels in lv_labels and values in lv_values, it contains any labeled arguments '-a b', if a value is not provided lv_value will point to NULL
values and lv_values both point to argv, and lv_labels points to argv + 1, as to ignore the dash('-')
when done with the data, call
2023-05-11 13:56:10 +00:00
`carg_parse_free(carg_parse_data* data)`
2023-05-11 13:52:22 +00:00
to free the data