ccsc hasznalokhoz

Petrik Gergely spee at pluto.shacknet.nu
Sun Apr 24 18:01:37 CEST 2005


On Sun, 24 Apr 2005, Nya'ri Viktor wrote:

> Balázs wrote:
>> Sziasztok,
>> 
>> Tudna valaki segiteni abban, hogyan kell egydimenzios tombot atadni 
>> fuggveny hivaskor?
>> 
>> Inya
>
> Talán pl. így; de nem vagyok biztos, próbáld ki:
>
>
>
> int egyiktomb[12];
>
> void fuggveny(int *masiktomb[12])
> {
> 	*masiktomb[0] = 10;
> 	*masiktomb[1] = 11;
> 	.
> 	.
> 	.
> 	*masiktomb[11] = 12;		}

hmmm. ez most ccsc specifikus dolog, vagy szabvany C? mert amig 
a tombpointert nem piszkalod, folosleges a sok csillagozas. 'tomb 
atadasa' a pointer atadasat jelenti C-ben (ahogy valaki mar irta 
is).

int a[20];
int b[30];

void f(int * q)
{
  q[0] = q[1];
  q = &b; //ennek semmi ertelme, mert q a stacken van 
}

int main()
{
  f(a); //<- itt f megkapja egy 20 ures helyre mutato tomb
        // pointeret, azaz a-t.
  return 0;
}

szerintem ennyi. akkor kell csillagozni, ha az atadott pointert 
(is) akarjuk buzeralni. ekkor
void g(int ** s) { *s = &b; } muxik, mert a stackre egy 
pointerre mutato pointert tettunk, es a fuggveny a hivatkozott 
pointert fogja felulirni. vagy nem ez volt a kerdes?

--
G

>
> void main(void)
> {
> 	fuggveny(&egyiktomb[0]);
> }


More information about the Elektro mailing list