/* * Copyright 2023 Oleg Borodin */ #include #include #include #include #include #include #include #include int main(void) { //(void)argc; //(void)argv; char* argv[] = { "main", "--id=-123", "--name=qwerty12234" }; int argc = 3; cllexer_t lexer; clparser_t parser; cllexer_init(&lexer); clparser_init(&parser, &lexer); int id = 0; char* name = ""; clparser_bind(&parser, CLVALTYPE_INT, "id", (void *)&id); clparser_bind(&parser, CLVALTYPE_STR, "name", (void *)&name); if (clparser_parse(&parser, &argv[1], argc - 1) < 0) { printf("parse args error\n"); return 1; } printf("id = %d\n", id); printf("name = %s\n", name); clparser_destroy(&parser); cllexer_destroy(&lexer); free(name); return 0; }