У меня возникают проблемы при использовании "*" при сравнении строк в моей программе C. Есть ли какое-то правило, запрещающее его использование? Вот неприятный кусок кода:
else if(strcmp(argv[i], "*") == 0)
{
printf("pos MULT: %d", pos);
result = dubStack[pos-1] * dubStack[pos - 2];
pos += 1;
}
При запуске программы с кодом выше мой оператор печати не запускается и результат не вычисляется. Однако, если я изменю символ в строке сравнения (например, как показано ниже; изменил * на m), будет выполнена правильная операция, и оператор print сработает. Что-то мне не хватает при использовании * для этого?
else if(strcmp(argv[i], "m") == 0)
{
printf("pos MULT: %d", pos);
result = dubStack[pos-1] * dubStack[pos - 2];
pos += 1;
}