[DUVIDA]no sscanf
#1

Boa tarde,

bom, estou com uma duvida n sei se mt grande mais para mim й mt dificiu saber esses parametros

Gente exemplo eu vo criar um comando com Scannf mais vejo nele algumas coisas estranhas
que n intendi mesmo num topico que tava explicando ai eu ainda n intendi direito!

ex:

pawn Код:
CMD:pm(playerid,params[])
{
    new
        mString[50],
        iName[25],
        pName[25],
        text,
        id
    ;
    if(sscanf(params,"us[128]",id,text))
        return SendClientMessage(playerid,-1,"USE: /pm [id] [texto]");
        if(!IsPlayerConnected(id))
        return SendClientMessage(playerid,-1,"*Jogador offline"); //comando BlueX
    GetPlayerName(playerid,pName,sizeof(pName));
    GetPlayerName(id,iName,sizeof(iName));
    format(mString,sizeof(mString),"Nova PM de %s | Texto: %s",pName,text);
    SendClientMessage(id,-1,mString);
    format(mString,sizeof(mString),"PM enviada com sucesso! Destinatario %s",iName);
    SendClientMessage(playerid,-1,mString);
    return true;
}
eu achava que o "us[128]" "u" eu sei que era o id mais se "s" й o texto pq esse "[128]" pelo que me parece й tipo uma contagem das cedulas do texto que aparecerб na tela!
mais esse aki tambйm usarб texto mais esse nгo tem o "[128]"

pawn Код:
CMD:a(playerid, params[])
{
    for( new i; i < MAX_PLAYERS; i++ )
    {
        if(IsPlayerAdmin(playerid))
        {
            if(sscanf(params, "s",texto))
            {
                SendClientMessage(playerid,-1,"Use: /a [texto]");
            }
            else
            {
                GetPlayerName(playerid,nome,sizeof(nome));
                format(Str, sizeof(Str),"%s: %s",nome,texto);
                SendClientMessage(i,-1,Str);
            }
        }
        else SendClientMessage(playerid,-1,"Vocк nгo й adminRcon");
    }
    return true;
}
entre tanto vejo tambйm muitos Outros ex:
pawn Код:
if(sscanf(cmdtext, "s[6]s[64]", cmd, cfg))
if(sscanf(cmdtext, "s[6]us[64]", cmd, plid, motivo))
e outro tambйm muitos estranho!

pawn Код:
"s[7]p<,>fffd"


eu queria intender mais sobre os parametros do Sscanf se alguem
puder me ajudar agradesзo desde jб
Reply
#2

Pois sгo versхes diferentes do sscanf, se nгo me engano no antigo nгo precisava de por [ ].
Reply
#3

mais e os outros exemplos sгo direferentes se puder explica-los!
Reply
#4

Antes de uma lida:
Quote:
Originally Posted by ******
Посмотреть сообщение
Код:
Specifier(s)			Name				Example values
	i, d			Integer				1, 42, -10
	c			Character			a, o, *
	l			Logical				true, false
	b			Binary				01001, 0b1100
	h, x			Hex				1A, 0x23
	o			Octal				045 12
	n			Number				42, 0b010, 0xAC, 045
	f			Float				0.7, -99.5
	g			IEEE Float			0.7, -99.5, INFINITY, -INFINITY, NAN, NAN_E
	u			User name/id (bots and players)	******, 0
	q			Bot name/id			ShopBot, 27
	r			Player name/id			******, 42
Vamos la,
pawn Код:
if(sscanf(cmdtext, "s[6]s[64]", cmd, cfg))//1
if(sscanf(cmdtext, "s[6]us[64]", cmd, plid, motivo))//2
1:

s[6] - s 'string' [6] 'tamanho'
s[64] - s 'string' [6] 'tamanho'

2:
s[6] - s 'string' [6] 'tamanho'
u - Id de jogador
s[64] - s 'string' [6] 'tamanho'

Basicamente й isso.

referente ao outro:
pawn Код:
"s[7]p<,>fffd"
s[7] - s string, [7] 'tamanho'
p<,> - se nгo me engano й para tirar algo da string ou pegar ela sem aquele caracter no caso uma ','
f - float
d - inteiro
Reply
#5

nossa mulek vlw ae
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)