[Tutorial] Strings

2 de jan. de 2013.

Strings
"O verdadeiro tamanho delas"

Estava agora a ver umas coisas e deu-me na cabeça de fazer um pequeno tutorial sobre strings, é simplesmente um tutorial sobre o tamanho das strings, digamos que é apenas um esclarecimento.

Como todos já sabem uma string é uma array 1D e todos nós sabemos que não é necessário usar strings de 256 para textos, o meu conselho é usar strings 128+ apenas para coisas externas, como por exemplo: MySQL.

O que muitos podem não saber é que normalmente o limite que definimos é errado, ou seja, quando você define 128 cells em uma string você está dizendo que o máximo de caracteres disponíveis serão apenas 127.

Então mas porque isso acontece?

Simplesmente porque a ultima célula é declarada com um EOS (End Of String) que em português significa, Fim Da String.

Veja você mesmo:
pawn Code:
new string[11]; format(string,sizeof(string),"%s","Hello World"); print(string);
(Usei format para formatar a nossa string, pois printf não teríamos provas solidas sobre isso)

Como podem ver ele irá imprimir: Hello Worl

Então se adicionarmos +1, ou seja, new string[12], e testarmos veremos que o ele irá imprimir: Hello World

Então concluímos que as strings que formatamos e que usamos como mensagens não devem ser de 128 mas sim de 129, porque o ultimo carácter será um EOS.

Isto não é um grande tutorial, simplesmente um esclarecimento de coisas.


Creditos: BlueX

0 comentários:

Postar um comentário