Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ада и другие языки _ Указатели и функции

Автор: 18192123 17.04.2007 0:19

Например, У меня есть такая функция вычисления вектора х:


int *mas_x(int (*a)[n], int *x)
{
int i,j;
for (i=0, j=n-1;i<n;i++, j--)
x[i]=a[i][j];
return x;
}




скажите, это ф-я, которая возвращает указатель на вектор х или это указатель на ф-ю, которая, в свою очередь, возвращает указатель на х?

Автор: volvo 17.04.2007 0:31

mas_x это функция, которая принимает: массив указателей на целое a, и указатель на целое x, и возвращает тот же указатель на целое (т.е., массив) x

Автор: 18192123 17.04.2007 0:36

Цитата(volvo @ 16.04.2007 21:31) *

mas_x это функция, которая принимает: массив указателей на целое a, и указатель на целое x, и возвращает тот же указатель на целое (т.е., массив) x

а разве (*a)[n] - это не указатель на первую строку матрицы а ?

Автор: volvo 17.04.2007 0:40

Понимаешь в чем дело? В C++ понятия массив и указатель переплетены так, что не сразу и разберешься, что есть что...

Я же написал тебе, что это -

Цитата
массив указателей на целое
, следовательно, это и есть указатель на первую строку матрицы...

Автор: 18192123 17.04.2007 0:43

Цитата(volvo @ 16.04.2007 21:40) *

В C++ ...



Меня интересует Си, а Си++.

Автор: volvo 17.04.2007 0:44

Здесь разницы между этими языками нет ...

Автор: 18192123 17.04.2007 0:45

Цитата(volvo @ 16.04.2007 21:44) *

Здесь разницы между этими языками нет ...

Спасибо. теперь ясно!