- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- vrob: Az utolsó DOS játékok 1996 - 1997-ben, egy korszak lezárul
- Rap, Hip-hop 90'
- Gurulunk, WAZE?!
- sziku69: Szólánc.
- btz: Internet fejlesztés országosan!
- sziku69: Fűzzük össze a szavakat :)
- Meggyi001: RTX 5060 - Az új népkártya?
- bitpork: Phautós tali a Balcsinál 2025 Augusztus 2 napján (szombat)
Hirdetés
Köszönjük a sok biztatást, támogatást! Egy rövid ideig még féláron tudsz hirdetni, előfizetni!
Új hozzászólás Aktív témák
-
alapz@j
tag
-
maestro87
őstag
válasz
ToMmY_hun #5664 üzenetére
Nem vagyok már annyira kezdő, kb 5 éve hobbi szinten programozgatok mikrokontrollereket.
Nekem újra fordítja (már amikor bírja a szerverük).
De a kedvedért most gyorsan lefuttattam CodeBlocks-ban is, és az van amit mondtam, semmivel sem másabb a kimenetcontinue
nélkül. Szerintem nézd át azt a kódot még egyszer.
Acontinue
itt csak annyit csinál, hogy a feltételt még egyszer leellenőrzi a hatására ami már nem fog teljesülni a feltételben lévőa = a + 1
miatt. Tehát itt semmi szerepét nem látom, ellenben az én példámmal ahol azif
előtt van értékadó utasítás is. -
maestro87
őstag
válasz
ToMmY_hun #5662 üzenetére
Lehet online futtatni a kódot és ha kitörlöd a
continue
-t ugyanaz lesz a kimenet. Aza = a + 1
miatt nem printeli ki a 15-öt, nem acontinue
miatt.Értem, tehát akkor a
continue
után elölről kezdődik a ciklus.
Akkor viszont ez a helyes példa kód a használatára:#include <stdio.h>
int main ()
{
/* local variable definition */
int a = 10;
/* do loop execution */
do
{
a++;
if( a == 15)
{
/* skip the iteration */
continue;
}
printf("value of a: %d\n", a);
} while( a < 20 );
return 0;
}Kimenetek:
value of a: 11
value of a: 12
value of a: 13
value of a: 14
value of a: 16
value of a: 17
value of a: 18
value of a: 19
value of a: 20continue
nélkül itt tényleg kiírja a 15-öt is.Már van is egy ötletem hol tudnám ezt használni a jelenlegi kódom optimalizálására. Köszi.
-
zka67
őstag
válasz
ToMmY_hun #5547 üzenetére
Szia, de igen, a pointerek csak és kizárólag egy darab memóriacímet tárolnak, ami egy darab szám. Az összes többit a fordító végzi el. Ha te pl. egy int típusú tömb címét adod át paraméterként egy függvénynek, az átadott paraméter csak a tömb címét tartalmazza. Amikor a függvényben a tömb következő elemére lépsz, a fordító által generált kód szerint lesz 4-el nagyobb a címed. Ha karakter tömb címét adod át, a fordító csak 1-el fogja növelni a címet. Ennél egyszerűbben nem tudom megfogalmazni.
-
Jester01
veterán
válasz
ToMmY_hun #5545 üzenetére
Pedig éppenséggel pointer készítő, mivel nem csak egy számot (a címet) adja vissza hanem konkrétan egy megfelelő típusú pointert (aminek a belső reprezentációja lehet, hogy nem is csak egy szám). Arra a valamire mutató pointert gyárt neked amit operandusként megadtál. (Igen, tudom, hogy amúgy address operator a neve.)
"The result is a pointer to the object or function designated by its operand"
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Xiaomi Redmi 10 128GB Kártyafüggetlen 1Év Garanciával
- ÚJ Microsoft Surface Laptop 7 13.8" 2K - 120Hz Érintő - Snapdragon X Elite - 16GB - 512GB-2 év gari
- GYÖNYÖRŰ iPhone 13 mini 256GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3039, 94% Akkumulátor
- Macbook Air 15 Retina (2023) M2 16GB 256GB Magyar iStyle vásárlás számla, doboz + Skin 1év Garancia
- Honor Pad X8 64GB, Wi-Fi, 1 Év Garanciával
Állásajánlatok
Cég: FOTC
Város: Budapest