[Tool/Web/Other] Contador: Strings Literais.
#1

Contador : Strings Literais.
Por rjjj ou Ken




Objetivo do programa:




Facilitar o cбlculo do tamanho ideal que variбveis arrays que armazenam strings devem ter .





Informaзхes:




Quando uma string й analisada da forma que estб no cуdigo-fonte do programa, ela й literal.



Em Pawn, por exemplo, a seguinte string literal de um arquivo .pwn :


pawn Код:
"String\046;"

Seria isto durante a execuзгo do cуdigo :


pawn Код:
"String."

Sem levar em conta o caractere EOS (null), que finaliza as strings na memуria.



O programa que fiz indica o nъmero de cells que determinada string literal ocuparia durante o processamento, e, consequentemente, o tamanho que uma variбvel array que fosse armazenб-la deveria ter.



Isso й algo bem simples de se fazer se o caractere de escape (\) e placeholders (%s, %d, etc) nгo forem envolvidos. E й aн que entra o contador que produzi .



Ele pode detectar estes sнmbolos como placeholders:


pawn Код:
%s
%d
%i
%c
%f
%x
%b
%%

E qualquer caractere especial derivado do uso do de escape.



Hб tambйm vбrias opзхes de substituiзгo de placeholders selecionadas para o desenvolvimento em SA-MP .





Notas importantes:




Assim que o programa for aberto, aparecerб um espaзo em branco.



Coloque nele a string literal a ter seu tamanho calculado, junto com as aspas ou com o operador de stringizing, como por exemplo :


pawn Код:
"String"


E clique em OK para saber o tamanho ideal que uma array deve ter para contк-la.



No exemplo que citei, esse valor seria 7 :


pawn Код:
new Array[7];
strcat(Array, "String");


Se a string tiver placeholders, como esta:


pawn Код:
"Nome: %s.  Idade: %d."

Marque a opзгo "Identificar Placeholders" e clique em OK .



O placeholder %s serб encontrado na string e depois o %d. Marque as opзхes que achar melhor.



Sempre que escolher "Outros", preencha o espaзo em branco que surgirб а direita com o nъmero mбximo de caracteres (sem contar com o EOS) que poderiam entrar no lugar do placeholder durante a execuзгo do arquivo .amx .





Crйditos:




rjjj ou Ken pela feitura do contador.





Atualizaзхes:




Corrigido um erro relativo ao sнmbolo %%.
Solucionado um problema na detecзгo de certos caracteres.





Download:




Clique Aqui





OBS: Nгo retire os crйditos !!



OBS2: O programa foi feito para Windows, com a linguagem C/C++ atravйs do IDE Borland C++ Builder .




Espero ter ajudado .
Reply


Messages In This Thread
Contador: Strings Literais. - by rjjj - 10.09.2012, 16:13
Re: Contador: Strings Literais. - by jpeg - 10.09.2012, 16:14
Re: Contador: Strings Literais. - by Douglas_prt - 10.09.2012, 16:14
Re: Contador: Strings Literais. - by Dolby - 10.09.2012, 16:17
Re: Contador: Strings Literais. - by paulor - 10.09.2012, 16:21
Re: Contador: Strings Literais. - by dPlaYer_ - 10.09.2012, 16:30
Re: Contador: Strings Literais. - by Kuddy - 10.09.2012, 16:50
Re: Contador: Strings Literais. - by 4LiSs0N - 10.09.2012, 17:28
Re: Contador: Strings Literais. - by Q.I - 10.09.2012, 19:11
Re: Contador: Strings Literais. - by zSuYaNw - 10.09.2012, 19:40

Forum Jump:


Users browsing this thread: 1 Guest(s)