19.02.2011, 21:40
(
Последний раз редактировалось superpol1; 21.02.2011 в 01:14.
)
Hola a todos espero que esten bien y q me puedad ayudar con mis dudas XD
necesito saber como funciona el strtok y el strcmp, ya busque en wiki del samp y como ta en ingles nu se entiende muy bienXD espero que me puedan ayudar.....
El siguiente codigo lo saque de wiki en ayuda del strtok
----------------------------------------------------------------
------------------------------------------------------------------
AQUI EL codigo de arriba sin nada de mis comentarios:
************************************************** ****
************************************************** ****
links de donde saque info:
el link de wiki sobre Strtok https://sampwiki.blast.hk/wiki/Strtok
el link de wiki sobre Strcrmp https://sampwiki.blast.hk/wiki/Strcmp
Bueno espero que puedan contestar todas mis dudas si no es molestia
Mas bien Disulpenme molestarlos, toy estudiando Programacion en vb.net asi q mas o menos le agarro,
pero no entiendo bien jejeje
Gracias a todos y buen fin de Semana
necesito saber como funciona el strtok y el strcmp, ya busque en wiki del samp y como ta en ingles nu se entiende muy bienXD espero que me puedan ayudar.....
El siguiente codigo lo saque de wiki en ayuda del strtok
----------------------------------------------------------------
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
//Aver playerid supongo que obtiene el id del jugador q ejecuta el comando
//cmdtext[] supongo que es una matriz de los comandos....
{
new cmd[128], idx;//se crea un array їtipo cmd? con longitud 128 y un idx їpara q sirve idx que valor toma?
cmd = strtok(cmdtext, idx);
//sacando del wiki y usandon el traductor ****** jejeje y arreglando un poco el strtok sirve para:
//(strtok) se utiliza para buscar una cadena y encontrar una variable despuйs de un " " (espacio), luego
//devolverlo como una cadena.
//osea si se tipeara "/kick 2" el strok seria 2 de tipo string por que esta despues de un espacio???
//que hace ahi el idx??
if(strcmp(cmd, "/kick", true) == 0)
//bueno si lo q pienso esta bien entoncs cmd = 2, tambien en wiki dice q strcmp sirve para comprara strings
//pero ahi algo q no entiendo, traduciendolo con traduc. ****** lo que devuelve la funcion:
//-1 si cadena1 viene antes de cadena2
//1 si cadena1 viene despues de cadena2
// cadena 1 їANTES o DESPUES? de cadena 2? no deberia devolver solo si son iguales o no las cadenas??
//pero bueno dejando eso de un lado esa linea: "if(strcmp(cmd, "/kick", true) == 0)" no estaria mal?
//si no toy mal compara "cmd" con "/kick" pero cmd valdria 2 no?? entoncs "2" no es = a "/kick", ayudaЎ
{
new tmp[128];
tmp = strtok(cmdtext, idx);
if(strlen(tmp) == 0) return SendClientMessage(playerid, 0xFFFFFFFF, "USAGE: /kick [playerid]");
Kick(strval(tmp));
return 1;
}
return 0;
//que significa return 0 y return 1?
}
AQUI EL codigo de arriba sin nada de mis comentarios:
************************************************** ****
pawn Код:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext, "/me", true, 3)) // 3 is the length of /me
{
if(!cmdtext[3])return SendClientMessage(playerid, 0xFF0000FF, "USAGE: /me [action]");
new str[128];
GetPlayerName(playerid, str, sizeof(str));
format(str, sizeof(str), "* %s %s", str, cmdtext[4]);
SendClientMessageToAll(0xFFFF00AA, str);
return 1;
}
return 0;
}
links de donde saque info:
el link de wiki sobre Strtok https://sampwiki.blast.hk/wiki/Strtok
el link de wiki sobre Strcrmp https://sampwiki.blast.hk/wiki/Strcmp
Bueno espero que puedan contestar todas mis dudas si no es molestia
Mas bien Disulpenme molestarlos, toy estudiando Programacion en vb.net asi q mas o menos le agarro,
pero no entiendo bien jejeje
Gracias a todos y buen fin de Semana