GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: bbTamas - 2013. augusztus 26. - 23:34:57

Cím: sscanf figyelmesztetések a konzolból
Írta: bbTamas - 2013. augusztus 26. - 23:34:57
Saját adminrendszert írok, és készítettem egy warn parancsot, de ennek használata közben hibát jelez az sscanf plugin a konzolba:
 
sscanf warning: String buffer overflow.
sscanf warning: Format specifier does not match parameter count.

 
Nem értem mi lehet a hiba, pedig simán csak így használom:
 
if(sscanf(params, \"us[64]\", id, reason))

 
Asszem a \"sscanf warning: String buffer overflow\" hibát akkor írja amikor 64 karakternél hosszabb indokot írtam be.
Ezt a hibát még kitudom javítani, de a másik hibaüzenetet nem értem. Elvben valami olyasmit ír, hogy céltárolókat nem jól adtam meg.
Cím: sscanf figyelmesztetések a konzolból
Írta: Zsolesszka - 2013. augusztus 26. - 23:39:07
1.) Úgy van.
2.) Nem egyezik meg a típusjelölések száma a paraméterek számával.
Pl.:
      \"dd\", int);  Kettõ format típus szerepel \"dd\", viszont csak egy változó paraméter (int), tehát nem egyezik meg a számuk.
Cím: sscanf figyelmesztetések a konzolból
Írta: bbTamas - 2013. augusztus 26. - 23:47:04
Létrehoztam két céltárolót a feltétel elõtt.
 
new id, reason[64],

 

if(sscanf(params, \"us[64]\", id, reason))

 
u-val jelzem, az sscanf-nak, hogy játékos id-t helyezek be \"id\" nevû egész számot tároló típusú változóba.
s[64] létrehoztam, egy céltárolót sscanf-nél megadtam a típusjelölést és a céltárolónak tömb méretét.
Itt a hiba?
Mert ezt most tényleg nem értem.
Lehet, hogy nem is ennél a parancsnál van a hiba mert ezt a hibát újból nem tudom elõhozni.
És lám, igazam van, megvan melyik parancs a hibás.(Ott keresek hibát ahol nincs, ahol meg hiba van ott meg nem keresem xd)
Értem, már hol a hiba,  ɐʞzssǝlosz köszönöm a segítségedet ment a plussz.:D