SA-MP Forums Archive
[Ajuda] Warning 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: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Warning Sscanf (/showthread.php?tid=417805)



Warning Sscanf - IgorMendes - 22.02.2013

pawn Код:
new az, bz, nz[1];
CMD:calcular(playerid, params[])
{
    if(sscanf(params, "d s d", az,nz,bz))
        return SendClientMessage(playerid,0xFFF000FF,"CORRETO: /calcular [ValorA] [Numerador] [ValorB]");
    else
    {
        if(strcmp(nz,"+",true) == 0)
        {
            SendClientMessageF(playerid,0xCC9900AA,"RESULTADO: %d",ReturnValor(az, bz, 1));
        }
        else if(strcmp(nz,"-",true) == 0)
        {
            SendClientMessageF(playerid,0xCC9900AA,"RESULTADO: %d",ReturnValor(az, bz, 2));
        }
        else if(strcmp(nz,"*",true) == 0)
        {
            SendClientMessageF(playerid,0xCC9900AA,"RESULTADO: %d",ReturnValor(az, bz, 3));
        }
        else if(strcmp(nz,"/",true) == 0)
        {
            SendClientMessageF(playerid,0xCC9900AA,"RESULTADO: %d",ReturnValor(az, bz, 4));
        }
        else
            return SendClientMessage(playerid,0xCC9900AA,"Numerador incorreto!");
    }
    return true;
}
Sу que sempre que utilizado o comando, o console me informa este warning:

Код:
sscanf warning: Strings without a length are deprecated, please add a destination size.
Alguem poderia me ajudar?


Re: Warning Sscanf - Dolby - 22.02.2013

O "Numerador" deve ser um char.
E nгo й necessбrio usar Strcmp para comparar chars.


Re: Warning Sscanf - ViniBorn - 22.02.2013

if(sscanf(params, "d c d", az,nz,bz))


Re: Warning Sscanf - IgorMendes - 22.02.2013

E como fazer estб comparaзгo sem usar Strcmp?


Re: Warning Sscanf - VenoN - 22.02.2013

Quote:
Originally Posted by Viniborn
Посмотреть сообщение
if(sscanf(params, "d c d", az,nz,bz))
assim


Re: Warning Sscanf - IgorMendes - 22.02.2013

Quote:
Originally Posted by Alex_Kidds
Посмотреть сообщение
assim
?

pawn Код:
new az, bz, nz[1];
CMD:calcular(playerid, params[])
{
    if(sscanf(params, "d c d", az,nz,bz))
        return SendClientMessage(playerid,0xFFF000FF,"CORRETO: /calcular [ValorA] [Numerador] [ValorB]");
    else
    {
        if(strcmp(nz,"+",true) == 0)
        {
            SendClientMessageF(playerid,0xCC9900AA,"RESULTADO: %d",ReturnValor(az, bz, 1));
        }
        else if(strcmp(nz,"-",true) == 0)
        {
            SendClientMessageF(playerid,0xCC9900AA,"RESULTADO: %d",ReturnValor(az, bz, 2));
        }
        else if(strcmp(nz,"*",true) == 0)
        {
            SendClientMessageF(playerid,0xCC9900AA,"RESULTADO: %d",ReturnValor(az, bz, 3));
        }
        else if(strcmp(nz,"/",true) == 0)
        {
            SendClientMessageF(playerid,0xCC9900AA,"RESULTADO: %d",ReturnValor(az, bz, 4));
        }
        else
            return SendClientMessage(playerid,0xCC9900AA,"Numerador incorreto!");
    }
    return true;
}
Seria isso? Mas tentei desta maneira e ele informa numerador incorreto.
E se fosse new nz; , teria que realizar a identificaзгo de nz de outra forma, como? ;s


Re: Warning Sscanf - Dolby - 22.02.2013

pawn Код:
if(nz == '*')  SendClientMessageF(playerid,0xCC9900AA,"RESULTADO: %d",ReturnValor(az, bz, 1));
Use como referкncia.


Re: Warning Sscanf - IgorMendes - 22.02.2013

Quote:
Originally Posted by Gustavo_Araujo
Посмотреть сообщение
pawn Код:
if(nz == '*')  SendClientMessageF(playerid,0xCC9900AA,"RESULTADO: %d",ReturnValor(az, bz, 1));
Use como referкncia.
Obrigado, nгo conhecia a utilidade de ' ;s