getopt() - C - Programmation
Marsh Posté le 07-04-2004 à 22:48:31
RTFM
Il faut mettre un double point-virgule pour indiquer qu'un argument est optionnel. Par contre, c'est une extension GNU qui n'est pas standard (POSIX).
EDIT : il faut mettre une double virgule, et non un double point-virgule.
EDIT 2 : dans la série "j'ai du mal", il s'agissait bien sûr d'un double "deux points"
Marsh Posté le 07-04-2004 à 23:20:10
je vais faire mon boulet mais ca n'a pas l'air de fonctionner et je trouve pas de doc la dessus
Marsh Posté le 07-04-2004 à 23:34:16
Si tu développe sous un Unix-like (style *BSD), il y a de fortes chances que cela ne fonctionne pas, en effet. Par contre, si tu utilise GNU/Linux ça devrait passer. Cela dit, utiliser les extensions GNU comme celle-ci est déconseillé pour des raisons de portabilité (à moins de développer un logiciel GNU bien sûr).
Marsh Posté le 08-04-2004 à 14:04:23
ReplyMarsh Posté le 08-04-2004 à 20:05:34
une double virgule dans ton edit ? chez moi j'ai mis :: donc un double deux-points.
pour un argument -D optstring prend cette forme donc "D::"
Marsh Posté le 08-04-2004 à 20:16:25
push a écrit : une double virgule dans ton edit ? chez moi j'ai mis :: donc un double deux-points. |
Décidément
Il s'agit d'un double "deux points" bien entendu
Marsh Posté le 07-04-2004 à 17:03:52
je suis en train de jouer avec cette fonction et j'ai vu pour l'instant que selon que l'on mette dans optstring deux point : devant la lettre d'option cela permettait d'indiquer que ce paramètre était suivit d'un argument.
dans optstring et si je lance mon prog avec -D tout seul il renvois option requires an argument -- D et je ne sais pas m'en servir.
maintenant mon soucis c'est que je voudrais utiliser le cas d'un -D tout seul et d'un -D10 par exemple, si je définis
je voulais savoir si c'était quand mêmê possible avec getopt() ou si c'était même pas la peine d'y pensser.
voila