Szerző Téma: Globális változónál nem enged értéket hozzárendelni  (Megtekintve 989 alkalommal)

Globális változónál nem enged értéket hozzárendelni
« Dátum: 2013. szeptember 21. - 15:14:52 »
0 Show voters
Mód elején létrehoztam egy globális változót.
new 3dtext[MAX_PLAYERS][32];
Egy függvénybe hozzárendeltem egy string értéket.
Aztán egy másik függvényben nulláznám a változó értékét, vagy értéket adnák neki akkor ezt írja ki:
3dtext[playerid] = \"kutya\";
 
error 047: array sizes do not match, or destination array is too small

 
És ez miért van?
Mindent jól csináltam, értem, hogy azt írja ki, hogy túl kicsi a tömb mérete, de hát a tömb mérete megfelelõ.

Nem elérhető jana4

  • 5929
  • Ex Staff
    • Profil megtekintése
Globális változónál nem enged értéket hozzárendelni
« Válasz #1 Dátum: 2013. szeptember 21. - 17:57:25 »
0 Show voters
Ne használd azonosításra a \'3dtext\'-et. Valamint a helyes alkalmazási mód:
 
new Text3D: szoveg[MAX_PLAYERS][32];

Globális változónál nem enged értéket hozzárendelni
« Válasz #2 Dátum: 2013. szeptember 21. - 18:39:24 »
0 Show voters
Értem, hogy nem a legjobb változónév, de hiába írom át a változó nevét a hiba akkor is fenáll.
Pontosabban leírom a kérdést.
Létrehozok egy globális tömböt, és értéktípusként stringet adok meg.
OnDialogResponse függvény alatt egy dialoban értéket adok.
De egy másik helyen, rendelnék hozzá új értéket, vagy nulláznám.
Hiába jó a tömb mérete hiába csinálom jól akkor is ezt írja ki és nem tudom, hogy miért.
 
error 047: array sizes do not match, or destination array is too small
« Utoljára szerkesztve: 2013. szeptember 21. - 18:47:45 írta bbTamas »

Globális változónál nem enged értéket hozzárendelni
« Válasz #3 Dátum: 2013. szeptember 21. - 20:27:14 »
0 Show voters
Ne használj változót szám érték kezdéssel, csak az angol abc betûivel kezd, max pár speciális írás jellel esetleg.
 
new 3dtext[MAX_PLAYERS][32];[/quote]
_3dtext[
t3dtext[

Globális változónál nem enged értéket hozzárendelni
« Válasz #4 Dátum: 2013. szeptember 24. - 19:14:44 »
0 Show voters
Köszönöm a választ, de az igazi probléma az, hogy létrehozok egy globális változót, és adtam neki értéket.
Viszont egy függvényben pl: szeretnék értéket adni neki:
 
globális változó neve = \'0\'; 

 
Erre ír hibát ki a fordító.
De ha egy másik változónak adok értéket, és azt rendelem hozzá, akkor is ezt a hibát írja ki a fordító.
És ötletem sincs, hogy miért írja ki ezt a hibát a fordító, mert nem tömb mérete a hiba.

Nem elérhető jana4

  • 5929
  • Ex Staff
    • Profil megtekintése
Globális változónál nem enged értéket hozzárendelni
« Válasz #5 Dátum: 2013. szeptember 24. - 19:22:25 »
+1 Show voters
globális változó neve = 0;

 
Karakter(lánc) esetén:
 
new var[6] = \"Nulla\";

Globális változónál nem enged értéket hozzárendelni
« Válasz #6 Dátum: 2013. szeptember 24. - 19:34:09 »
0 Show voters
Talán ha leírnád azokat a változókat, hamarabb kapnál választ a problémádra.

Globális változónál nem enged értéket hozzárendelni
« Válasz #7 Dátum: 2013. szeptember 24. - 19:42:01 »
0 Show voters
error 047: array sizes do not match, or destination array is too small

 
Így csináltam én is, nem a változó nevével és típusával nem a gond.
Nem az a gond.
 
enum info
{
VehPlate[32],
Admin
}
pInfo[playerid][info];

 
Egy függvénybe adok neki értéke, pl:
 
pInfo[playerid][VehPlate] = \'macska\';

 
Egy másik függvényben nulláznám.
 
pInfo[playerid][VehPlate] = \'0\';

 
De nem engedi mert mindig ezt írja ki:
 
error 047: array sizes do not match, or destination array is too small

Globális változónál nem enged értéket hozzárendelni
« Válasz #8 Dátum: 2013. szeptember 24. - 20:16:13 »
+1 Show voters
Az enum típusú változónál szokott így panaszkodni a fordító.
Használj valami eljárást erre a célra, mondjuk format-ot.
http://wiki.sa-mp.com/wiki/Format

Globális változónál nem enged értéket hozzárendelni
« Válasz #9 Dátum: 2013. szeptember 24. - 20:33:59 »
0 Show voters
ɐʞzssǝlosz Köszönöm a válaszodat, így már jó. :)
Nem gondoltam volna, hogy enum-nál ilyennek is vannak.
Mindenki kapott egy pluszt aki segített.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal