Je ne peux pas passer de chaînes commençant par #
comme arguments de ligne de commande.
Voici un test simple:
#include <stdio.h>
int main(int argc, char *argv[])
{
for (int i = 1; i < argc; i++)
printf("%s ", argv[i]);
putchar('\n');
return 0;
}
Si j'entre les arguments comme suit:
2 4 # 5 6
La valeur de argc
est 3
et non 6
. Il lit #
et s'arrête là. Je ne sais pas pourquoi et je ne trouve pas la réponse dans mes copies de The C Programming Language et C Primer Plus .