Не видя определения minLocation
, мы не можем сказать. Но можно с уверенностью сказать, что он не принимает двух аргументов - компиляторы не лгут вам просто ради удовольствия, вы обычно можете предположить, что то, что они говорят, правда: -)
Вам нужно найти определение, что-то вроде:
int minLocation (int loc) { ...
и выясните, как вы на самом деле хотели это назвать. Учитывая, что, похоже, он пытается найти, какой из двух индексов имеет меньшее значение, возможно, ему нужно больше , чем два аргумента.
И, кроме того, вам нужно решить, хотите ли вы, чтобы эта переменная называлась mIndex
или minIndex
. Большинство компиляторов недостаточно умны, чтобы понять это за вас.
Исходя из ваших правок, muinFunction
определяется как:
int minLocation (string list[], int first, int last) { ...
Кажется очевидным, что ему также нужен массив строк и два индекса. Вам нужно будет изменить вызов на:
mIndex = minLocation (slist, loc, length-1);
И следите за вызовом swap
. может иметь аналогичное требование, основанное на стиле кодирования.