Új hozzászólás Aktív témák
-
Dead_slow
tag
válasz
[HUN]Zolee
#155
üzenetére
Ok, úgy lesz. Örülök hogy segíthettél

-
Jester01
veterán
válasz
[HUN]Zolee
#161
üzenetére
Hát mert az elemeket nem foglaltad le egyáltalán.
-
Dead_slow
tag
válasz
[HUN]Zolee
#149
üzenetére
HE-HE.
Én is ugyanazt a feladatot kaptam beadandónak, nagyon sokat segítettél
-
Jester01
veterán
válasz
[HUN]Zolee
#149
üzenetére
Semmit, kicsi a k amivel hívod. 3 lépés kevés, próbáld hattal vagy többel.
-
PazsitZ
addikt
válasz
[HUN]Zolee
#146
üzenetére
(*U_mutato).nev
Az U_mutato-t a precedencia (elsőbbségi) szabály miatt kell zárójelbe tenni, mert ha nem tennénk a fordító azt hihetné, hogy ez egy U_mutato.nev változóra mutató pointer.
Mivel a C régi változatainak idejében elég gyakran volt szükség struktúra-mutatók használatára és kényelmetlen, zavaró volt minden egyes alkalommal zárójelezni, ezért kitaláltak egy új operátort, ez a -> (nyíl; egy mínusz jelből és egy ’nagyobb’ relációs jelből tevődik össze). Ennek használatával már nem kell zárójeleznünk:
U_mutato->nev
-
amargo
addikt
válasz
[HUN]Zolee
#146
üzenetére
cahar *p;
(*p).valami;
helyett elég a
p->valami; -
Jester01
veterán
válasz
[HUN]Zolee
#132
üzenetére
t.c: In function ‘test’:
t.c:40: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘int *’
t.c:41: warning: format ‘%d’ expects type ‘int’, but argument 2 has type ‘int *’Valamint a foglalás valóban rossz, ha már egyszer int-eket akarsz tárolni, akkor azoknak foglalj helyet, illetve ügyelj a pointerekre!
Diff:
--- t.c.orig 2007-11-20 16:48:48.000000000 +0100
+++ t.c 2007-11-20 16:59:32.000000000 +0100
@@ -8,24 +8,24 @@
int i,j;
- (*t)=(int***)malloc(sor*sizeof(char));
+ (*t)=(int***)malloc(sor*sizeof(int**));
for (i=0;i<sor;i++) {
- (*t)[i]=(int**)malloc(sor*sizeof(char));
+ (*t)[i]=(int**)malloc(sor*sizeof(int*));
}
for(i=0;i<sor;i++){
for (j=0;j<sor;j++){
printf("i:%d j:%d\n",i,j);
- (*t)[i][j]=(int*)malloc(2*sizeof(char));
+ (*t)[i][j]=(int*)malloc(2*sizeof(int));
}
}
for (i=0;i<sor;i++){
for (j=0;j<sor;j++) {
- t[i][j][0]=0;
- t[i][j][1]=0;
+ (*t)[i][j][0]=0;
+ (*t)[i][j][1]=0;
}
}
@@ -37,8 +37,8 @@
for (i=0;i<sor;i++) {
for (j=0;j<sor;j++) {
- printf("%d",t[i][j][0]);
- printf("%d",t[i][j][1]);
+ printf("%d",(*t)[i][j][0]);
+ printf("%d",(*t)[i][j][1]);
}
printf("\n");
} -
[HUN]Zolee
őstag
válasz
[HUN]Zolee
#132
üzenetére
Ha valakit érdekel a hiba ez volt :
t[i][j][0]=0
helyett
(*t)[i][j][0]=0
kell
Ú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!
- Dell P3421W - (3440x1440 , PBP/PIP,KVM,USB-C)
- MSI Vanguard SOC RTX 5080 16GB (2 év garancia)
- Gainward 4060Ti Ghost 8GB / 11 Hónap Alza.hu Garancia / Beszámítás OK!
- BONTATLAN Új Ipad 10th , 11th Minden szín 1év hivatalos Apple Garancia AZONNAL ÁTVEHETŐ DEÁK TÉRNÉL.
- BONTATLAN Új Iphone 17 256-512GB Minden Szín 1év APPLE garancia gyári független Deák AZONNAL Átvehet
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

