Я уже прочитал несколько сообщений об этом, но я по-прежнему не могу исправить свой код.Подстрочное значение не является ни массивом, ни указателем, ни вектором (позиции char)
int numericValue(char s, int i) {
if (strcmp(s[i], "$") == 0)
return 0;
else
return value(s[i]) + numericValue(s, i + 1);
}
Это мой код, и если я изменю int numericValue(char s, int i)
для int numericValue(char *s, int i)
У меня есть это предупреждение:
передавая аргумент 1 из «» STRCMP делает указатель из целого числа без приведения [-Wint преобразования] ,
Что мне делать?
'cad' не является массивом, поэтому вы не можете использовать обозначение массива. Вы хотите, чтобы pas 'char *' в 'valorNumerico' –
. Пожалуйста, добавьте строку кода, где вы называете' valorNumerico' (изначально) –
... далее следует 'if (cad [i] == '$')' и удалите все ненужные вещи «сравнения». –