Указатель в элементе массива ?
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Указатель в элементе массива ? - 2011-08-07 12:26:52.646666
|
|
|
Крутой 0ль !
Сообщений: 150
Оценки: 10
Присоединился: 2010-12-02 19:33:25.666666
|
1.Если я задаю в элемент массива указатель на функцию , тип возвращаемого значения неизвестно , то тип массива нужно указывать как void ? 2.Вот в учебнике c\c++ Т.А Павловская идёт следующий код про размерность массива :
const int n=10;
int i,sum;
int marks[n]={3,4,5,4,4};
for(i=0; sum=0; i<n; i++) sum+=marks[i];
cout << "Сумма элементов :" << sum;
return 0;
пишет :<Последний элемент массива на единицу меньший заданной при его описании размерности>Т.е если мы задали marks[10] размерность в {10} , то значение этого элемента будет = 9 ???
|
|
|
RE: Указатель в элементе массива ? - 2011-08-07 13:21:59.716666
|
|
|
ALE}{_Y
Сообщений: 35
Оценки: 0
Присоединился: 2010-02-14 03:23:27.436666
|
quote:
1.Если я задаю в элемент массива указатель на функцию , тип возвращаемого значения неизвестно , то тип массива нужно указывать как void ? Если функция, на которую указывает Ваш указатель, не возвращает никаких значений, то тип массива действительно надо указывать void. В общем случае порядок обьявления указателя на функцию следующий: тип_возврата (*имя_указателя) (список_типов_параметров). В Вашем случае - void (*имя_указателя) (список_типов_параметров). quote:
<Последний элемент массива на единицу меньший заданной при его описании размерности>Т.е если мы задали marks[10] размерность в {10} , то значение этого элемента будет = 9 ??? В этом примере элементы инициализируються следующим образом: {3, 4, 5, 4, 4, 0, 0, 0, 0, 0}. Вывод "Сумма элементов: 20" получаем из первых пяти элементов. Возможно (это мои личные домыслы) в данной книге написано не про значения элементов массива, а про индексы элементов - так как индексация в массивах начинаеться с 0, то индекс последнего (десятого) элемента будет равен 9.
|
|
|
RE: Указатель в элементе массива ? - 2011-08-07 14:29:22.976666
|
|
|
rgo
Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
|
quote:
ORIGINAL: Крутой 0ль ! 1.Если я задаю в элемент массива указатель на функцию , тип возвращаемого значения неизвестно , то тип массива нужно указывать как void ? В C функция с неизвестным типом возвращаемого значения – это глупость. Как программа разберётся со значением прилетевшим из функции, если она не знает типа этого значения? Если функции ничего не возвращают – то это одно дело. Но если одна функция возвращает char*, другая int, а третья float, то это совершенно другое дело, и это не дело.
|
|
|
|
|