Каков синтаксис использования ключевого слова restrict для параметра функции 2d-массива? - PullRequest
0 голосов
/ 15 февраля 2020

У меня есть массив, объявленный в моей основной функции: float A[n][n];

Моя цель - передать его функции с ключевым словом restrict: void func(int n, float restrict A[][n])

Я попробовал синтаксис выше , но я не получаю оптимизацию во время выполнения, которую я ожидаю. Я также видел этот синтаксис для 1d массивов: void func(int n, float A[restrict])

1 Ответ

1 голос
/ 16 февраля 2020

Указатель может быть ограничен. Все приведенные ниже формы эквивалентны:

void func(int n, float A[restrict n][n]);
void func(int n, float A[restrict][n]);
void func(int n, float (* restrict A)[n]);
...