No puedo pasar cadenas que comiencen #
como argumentos de línea de comandos.
Aquí hay una prueba 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 ingreso los argumentos de la siguiente manera:
2 4 # 5 6
El valor de argc
es 3
y no 6
. Se lee #
y se detiene allí. No sé por qué, y no puedo encontrar la respuesta en mis copias de The C Programming Language y C Primer Plus .