Я пытаюсь прочитать значения из двумерного массива и умножить их, чтобы создать новый массив массива.Это не совсем важно.
Я создал макрос для чтения значений вместо функции, чтобы теоретически быть более эффективным, но у меня есть синтаксическая ошибка, которую я не могу понять.Строка выдачи
// compute and write the value for the result array
writearr( result, n, r, c, ( READ(r, c, A*) * READ(c, r, A*) ) );
с заголовком функции
void newarr(int n, int* A, int* result)
Макрос
#define READ(a, b, arr) (arr[a][b])
, и когда я пытаюсь скомпилировать это, я получаю
gcc -Wall -O2 -c -o placeholder.o placeholder.c
placeholder.c: In function âwritearrâ:
placeholder.c:26: error: expected expression before â[â token
make: *** [placeholder.o] Error 1
но я не могу понять, в чем проблема.