Sziasztok. Az lenne a problémám, hogy a rövidebb parancsok blokkolják azoknak a hosszabb parancsok mûködését, amik ugyanazzal a betûvel a kezdõdnek.
Van egy \'/r\' parancsom, ami rádiót jelent, azonban ha beírom, hogy /repair (ami másik parancsom), akkor kiírja, hogy \'nincs frekvencia beállítva\', mivel a \'/r\'-t érzékeli. Sose tudtam a megoldását, valaki valami ötlet?
if(!strcmp(cmdtext, \"/r\", true, 2))
if(!strcmp(cmdtext, \"/repair\", true, 7))
Nem kérek olyan kommenteket, hogy \"Használj ZCMD-t, az könnyebb\", meg \"Miért nem ZCMD-t használsz\". Én ezt használom, ezt szeretem. Válaszokat elõre is köszönöm!
Mert megszabod hogy mennyi karaktert egyeztessen:
if(!strcmp(cmdtext, \"/r\", true, 2))[/quote]
Természetes dolog hogy egyezést talál mivel az /r parancsnál 3 karakternyit kellene ellenõrizni a harmadik meg az úgynevezett null karakter \'\\0\'.
Tehát: \'/\',\'r\',\'\\0\' ez 3 karakter.
Hagyd el a karakterek meghatározásának lehetõségét vagy növeld meg egyel az értékeket.
if(!strcmp(cmdtext, \"/r\", true, 3))
//vagy
if(!strcmp(cmdtext, \"/r\", true))
Mert megszabod hogy mennyi karaktert egyeztessen:
if(!strcmp(cmdtext, \"/r\", true, 2))
Természetes dolog hogy egyezést talál mivel az /r parancsnál 3 karakternyit kellene ellenõrizni a harmadik meg az úgynevezett null karakter \'\\0\'.
Tehát: \'/\',\'r\',\'\\0\' ez 3 karakter.
Hagyd el a karakterek meghatározásának lehetõségét vagy növeld meg egyel az értékeket.
if(!strcmp(cmdtext, \"/r\", true, 3))
//vagy
if(!strcmp(cmdtext, \"/r\", true))
[/quote]
Ez így jó is lenne, csak az a baj, hogy hibát észlel mostmár, ha a \'/r\' után szöveget írok. Nem ismeri fel a parancsot.