Kezdőoldal » Számítástechnika » Programozás » C-ben tudok bevinni egy...

C-ben tudok bevinni egy ciklus alá olyan változót amely csak egyszer tárolódik el?

Figyelt kérdés

mondjuk

for(i=0;i<10;i++)

{

k=i+5;

}



Itt pl. a k 5 marad folyamatosan. Ha nem létezik ,hogyan tudnék megoldani egy ilyen problémát?


2014. nov. 21. 01:35
 1/3 anonim ***** válasza:

Csak azt nem írtad le, hogy mit szeretnél. (vagy csak én nem értem)


Nézd:


k=5;

for(...


Így 5 lesz a k.


for(i=0,k=i+5;i<10;++i) { ...


Így is.


Ezen kívül mi kell?

2014. nov. 21. 01:47
Hasznos számodra ez a válasz?
 2/3 A kérdező kommentje:

Így néz ki a programom:

while (fscanf(fp, "%s", &x)==1)

{


p = (adatok*)malloc(sizeof(adatok));


strcpy(p->x, x);


p->next = lista;

lista = p;

}


és ugye ekkor nincs header pointerem ami a lancolt lista elejere mutat így nem tudm bejárni egy másik programrészben. Hogyan kapom vissza az első elemre mutató pointert?

2014. nov. 21. 02:01
 3/3 anonim ***** válasza:

Ja, hogy ja.

Hát sehogy :D


Mivel egy darab adatok típusú pointered van, ezért ha ezt átállítod egy bármilyen elemre, elveszted az elejét.

Tehát:

csinálsz egy "eleje" nevezetű pointert, amibe elmented a lista elejét, és akkor abban lesz.


Az első elemet egy feltétellel vizsgálod:


..if (eleje == NULL)..


Ez kell bele, vagy valami más trükközés, de csak így "simán" nem lesz jó.

2014. nov. 21. 02:09
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!