Я не могу передать строки, начинающиеся с #
аргументов командной строки.
Вот простой тест:
#include <stdio.h>
int main(int argc, char *argv[])
{
for (int i = 1; i < argc; i++)
printf("%s ", argv[i]);
putchar('\n');
return 0;
}
Если я введу аргументы следующим образом:
2 4 # 5 6
Ценность argc
есть 3
и нет 6
. Это читает #
и останавливается там. Я не знаю почему, и я не могу найти ответ в моих копиях языка программирования C и C Primer Plus .