SA-MP Forums Archive
[DUDA] sscanf - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: [DUDA] sscanf (/showthread.php?tid=438370)



[DUDA] sscanf - Matyaas - 19.05.2013

Hola a todos, estaba testeando algo con un amigo y veo la consola y me tira este warning o no sй que es el sscanf en la consola del samp-server D:

sscanf warning: Strings without a length are deprecated please add a destination size.
Alguien me puede decir que quiere decir ese mensaje? ayuda y gracias!


Respuesta: [DUDA] sscanf - Parka - 19.05.2013

eso pasa ( en lo que a mi me respecta ) cuando usas en un comando 'd' o 's' ( siempre y cuando sea string ) cuando la forma correcta es 's[Maximo]'


Respuesta: [DUDA] sscanf - Matyaas - 21.05.2013

Uum creo que uso bien el sscanf por lo que dices (creo).
Asн uso los comandos con s[NUMERO]

pawn Код:
YCMD:congelartodos(playerid, params[], help)
{
    if(pInfo[playerid][Nivel] >= 2)
    {
        if(pInfo[playerid][Logueado] == 0) return Error(playerid, 11);
        new string[128], Razon[128];
        if(sscanf(params, "s[128]", Razon)) return SendClientMessage(playerid, COLOR_AZUL, "[ERROR]: {FFFFFF}Uso: /Congelartodos [RAZON]");
        foreach(Player, i)
        {
            if(pInfo[i][Nivel] >= 1)
            {
                TogglePlayerControllable(i, 1);
            }
            else
            {
                TogglePlayerControllable(i, 0);
            }
        }
        format(string, sizeof(string), "{375FFF}[INFO]: {FFFFFF}El administrador {375FFF}%s {FFFFFF}ha congelado a todos los jugadores. [RAZON: %s]", aNombre(playerid), Razon);
        SendClientMessageToAll(-1, string);
    } else return Error(playerid, 3);
    return 1;
}
їEs correcto? saludos-


Respuesta: [DUDA] sscanf - JustBored - 21.05.2013

Usalo asн
pawn Код:
new Razon;
if(sscanf(params, "s[64]", Razon)) etc..
Ah y le bajй la cantidad de carбcteres ya que їpara que 64?


Respuesta: [DUDA] sscanf - Matyaas - 21.05.2013

Le bajaste solo la cantidad de caracteres? saludos! 64 es lo mбximo en una razon yo creo, gracias!


Respuesta: [DUDA] sscanf - JustBored - 21.05.2013

Le bajй la cantidad porque їpara quй usar carбcteres al pedo? y tambiйn cambiй el tipo de variable (Razon) a integrer cuando antes era string.


Respuesta: [DUDA] sscanf - DesingMyCry - 21.05.2013

Quote:
Originally Posted by JustBored
Посмотреть сообщение
Le bajй la cantidad porque їpara quй usar carбcteres al pedo? y tambiйn cambiй el tipo de variable (Razon) a integrer cuando antes era string.
Quieres guardar una cadena de carбcteres en una variable tipo integer? luego, como lo usarбs?

pawn Код:
printf("Impresiуn: %d", razon);
Asн?


Re: [DUDA] sscanf - Jovazxc - 21.05.2013

pawn Код:
if(sscanf(params, "s[128]", Razon)) return SendClientMessage(playerid, COLOR_AZUL, "[ERROR]: {FFFFFF}Uso: /Congelartodos [RAZON]");
Uso inutil de sscanf, lo que estб en params lo estas pasando a Razon, їpor quй no mejor usar directamente params y un strlen o la funciуn isnull ?

LOL...


Respuesta: [DUDA] sscanf - JustBored - 21.05.2013

Quote:
Originally Posted by DesingMyCry
Посмотреть сообщение
Quieres guardar una cadena de carбcteres en una variable tipo integer? luego, como lo usarбs?

pawn Код:
printf("Impresiуn: %d", razon);
Asн?
Hmm, he visto que sscanf se ha utilizado asн. Y sн lo vi en este foro, usuarios que generaban variables (integrers) y las utilizaban con sscanf con una string. A mi tambiйn me parecнa extraсo pero el cуdigo terminaba funcionando.


Respuesta: Re: [DUDA] sscanf - pinpon - 21.05.2013

Quote:
Originally Posted by Josstaa
Посмотреть сообщение
pawn Код:
if(sscanf(params, "s[128]", Razon)) return SendClientMessage(playerid, COLOR_AZUL, "[ERROR]: {FFFFFF}Uso: /Congelartodos [RAZON]");
Uso inutil de sscanf, lo que estб en params lo estas pasando a Razon, їpor quй no mejor usar directamente params y un strlen o la funciуn isnull ?

LOL...
+1.

Hay varios tutoriales (en la secciтn inglesa donde encontrarаs guмas de sscanf).