Initial import.
This commit is contained in:
commit
bb3bf1fe53
3 changed files with 53 additions and 0 deletions
20
Makefile
Normal file
20
Makefile
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
|
||||||
|
SRC = $(wildcard src/*.c)
|
||||||
|
DEPS = $(wildcard deps/**/*.c)
|
||||||
|
OBJS = $(DEPS:.c=.o)
|
||||||
|
|
||||||
|
CFLAGS = -std=c99 -Ideps -Wall -Wno-unused-function -U__STRICT_ANSI__
|
||||||
|
BINS = exercice
|
||||||
|
|
||||||
|
|
||||||
|
all: $(BINS)
|
||||||
|
|
||||||
|
$(BINS): $(SRC) $(OBJS)
|
||||||
|
$(CC) $(CFLAGS) -o $@ src/$(@:.exe=).c $(OBJS) $(LDFLAGS)
|
||||||
|
|
||||||
|
%.o: %.c
|
||||||
|
$(CC) $< -c -o $@ $(CFLAGS)
|
||||||
|
|
||||||
|
clean:
|
||||||
|
$(foreach c, $(BINS), rm $(c);)
|
||||||
|
rm $(OBJS) src/*.o
|
BIN
exercice
Normal file
BIN
exercice
Normal file
Binary file not shown.
33
src/exercice.c
Normal file
33
src/exercice.c
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
typedef struct arg_opt {
|
||||||
|
char * name;
|
||||||
|
void * fn;
|
||||||
|
} Arg_opt;
|
||||||
|
|
||||||
|
Arg_opt options[1] = {{"toto", NULL}};
|
||||||
|
|
||||||
|
int main(int argc, char ** argv) {
|
||||||
|
int arg_idx = argc;
|
||||||
|
int opt_idx;
|
||||||
|
char * txt;
|
||||||
|
char * arg;
|
||||||
|
|
||||||
|
|
||||||
|
while(arg_idx > 0) {
|
||||||
|
printf("arg_idx=%d\n", arg_idx);
|
||||||
|
arg = argv[arg_idx-1];
|
||||||
|
opt_idx = sizeof(options) / sizeof(options[0]);
|
||||||
|
while (opt_idx > 0) {
|
||||||
|
printf("opt_idx=%d\n", opt_idx);
|
||||||
|
txt = options[opt_idx-1].name;
|
||||||
|
if (strcmp(txt, arg)==0) {
|
||||||
|
printf("[+] %s\n", arg);
|
||||||
|
}
|
||||||
|
opt_idx--;
|
||||||
|
}
|
||||||
|
arg_idx--;
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
Loading…
Reference in a new issue