Bonjour tout le monde
J'ai un petit ennui avec getopt... J'essaye de recuperer plusieurs valeurs pour une option mais apparement les options suivantes ne sont plus prises en compte...
et je lance cette commande :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 while ((c = getopt(argc, argv, "p:x:y:c:t:vn::" )) != EOF) { if (c == 'p') env.port = atoi(optarg); else if (c == 'x') env.map_x = atoi(optarg); else if (c == 'y') env.map_y = atoi(optarg); else if (c == 'c') env.max_players = atoi(optarg); else if (c == 't') env.cronos = atoi(optarg); else if (c == 'v') env.verbose = 1; else if (c == 'n') { env.teams = xmalloc(3 * sizeof(*env.teams)); env.teams[2] = "\0"; env.teams[0] = strdup(optarg); optarg += (strlen(env.teams[0]) + 1); env.teams[1] = strdup(optarg); } }
./serveur -p 39115 -x 666 -y 69 -v-n LoL Ookay -t 4242 -c 11
Le resultat :
map_x : 666
map_y : 69
port : 39115
Team 1 : LoL
Team 2 : Ookay
verbose : 1
max_players : 0
cronos : 0
En fait le getopt ignore toutes les options passees apres...
Quelqu'un aurait il une petite idee ? Merci d'avance !
Partager