Problem ze wskaznikami

0

Jak odczytac (slownie) ponizsza definicje:
double (* pA)[20];
Jak to zaalokowac operatorem new? Jakas petle?

1

mam wrazenie ze przed chwila to w innym topicu pisalem..
ale niewazne ;ppp powtorze sie ;>

pA jest wskaznikiem do dwudziesto-elementowej tablicy zmiennych zmiennoprzecinkowych podwojnej precyzji ;>>>

czyli ;>

double asdf[ 20 ], xxx[5][20], (*pA)[20] = &asdf /*lub xxx*/;

petle ? chyba niepotrzebnie ;>
double (*pA)[20] = new double[10][20]; powinno wystarczyc ;> chyba ;>>

0

A za pomoca malloc?

0

Juz wiem jak jesli to kogos interesuje:

doube (* pA)[20];
pA=(double ()[20])malloc(10sizeof(double[20]));

0

pA NIE jest wskaznikiem na tablice!!! gdyby tak bylo to byloby to zapisane bez nawiasow. pA jest wskaznikiem do FUNKCJI zwracajacej 20 elementowa tablice.

pozdrowka,
Ray

1

pA NIE jest wskaznikiem na tablice!!! gdyby tak bylo to byloby to zapisane bez nawiasow. pA jest wskaznikiem do FUNKCJI zwracajacej 20 elementowa tablice.

pozdrowka,
Ray

Obawiam sie ze wypisujesz herezje ;>>>>
Ok od poczatku:

int *a[20] - tablica 20 wskaznikow do typu int
int (*a)[20] - wskaznik do tablicy 20 elementow inta
int ((a)())[20] - tablica 20 wskaznikow do funkcji zwaracajacej int
natomiast NIE mozna zwrocic talicy 20 elementow... dlaczego? poczytaj std. ANSI C ;p mozesz co najwyzej zwrocic wskaznik do takiej tablicy, ale to by bylo zapisane wtedy
(int (
)[20])(*a)(); ;>

0

Mówiąc krótko chodzi tutaj o priorytety znaków i żeby było tak jak chcecie, trzeba te mniej priorytetowe brać w nawiasy, żeby wykonać je jako pierwsze.

0

Gynvael Coldwind zapewniam, ze:

int (*wsk[20])();

to 20-elementowa tablica wskaznikow na bezargumentową funkcje zwracającą typ int :-P

1 użytkowników online, w tym zalogowanych: 0, gości: 1