Portal SAMP
[Ajuda] Erro em módulo - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Erro em módulo (/showthread.php?tid=4413)



Erro em módulo - EduzinMods - 15/01/2024

Estou com uma GM que não compila e dá os seguintes erros:

[Imagem: tVdtuWO.png]


Linha do erro:

[Imagem: uxV4H5B.png]

O erro está na linha 140:  error 001: expected token: ";", but found "Å"


RE: ERRO EM MODULO - Maycon_Felipe - 15/01/2024

Se você quer verificar char você precisa colocar apenas um caractere dentro de um apóstrofo simples. ex: 'Ã', 'A'.
Se você usa mais de um caractere dentro já não é mais um char e passa ser uma string, "ÃÉ", "AE".

Char: 'A' apenas um caractere.
String: "A" vários.


RE: ERRO EM MODULO - EduzinMods - 15/01/2024

(15/01/2024 17:11)Maycon_Felipe Escreveu: Se você quer verificar char você precisa colocar apenas um caractere dentro de um apóstrofo simples. ex: 'Ã', 'A'.
Se você usa mais de um caractere dentro já não é mais um char e passa ser uma string, "ÃÉ", "AE".

Char: 'A' apenas um caractere.
String: "A" vários.

MAIS EXATAMENTE TENHO QUE FAZER OQ ? PRA CONSEGUIR RESOLVER ISSO ?


RE: ERRO EM MODULO - Maycon_Felipe - 15/01/2024

Transformar seus char de dois caracteres em string, o useja, troca ' por "..

Vou por um exemplo a baixo com a solução, e peço que quando for postar algo, coloque o código para facilitar em
vez de imagens..

Fica de seu interesse achar outra solução viável e ver qual ficará menos custoso para seu servidor.
Código:
    static strport[][] = {
        {"ÆÂ", "CL"},
        {"ÁS", "LC"}
    };

    new stringteste[] = "entÆÂ ela foi ÁS";
    printf("String 1: %s", stringteste);
    for(new i = 0, tam = sizeof(strport); i < tam; ++i)
    {
        ReplaceString(stringteste, strport[i][0], 2, strport[i][3]);
    }
    printf("Solução 1: %s", stringteste);

    stringteste = "entÆÂ ela foi ÁS";
    printf("String 2: %s", stringteste);
    for(new x = 0, len = strlen(stringteste); x < len; ++x)
    {
        for(new i = 0, tam = sizeof(strport); i < tam; ++i)
        {
            if(stringteste[x] == strport[i][0] && stringteste[x+1] == strport[i][1])
            {
                stringteste[x] = strport[i][3];
                stringteste[x+1] = strport[i][4];
            }
        }
    }
    printf("Solução 2: %s", stringteste);


    ReplaceString(const string[], const string2[], delimiter, const insertstr[])
    {
        new find = strfind(string, string2), pos_last;
        if(find != -1)
        {
            pos_last = find;

            strdel(string, find, find + delimiter);
            strins(string, insertstr, find, find + delimiter);
            while(find != -1)
            {
                find = strfind(string, string2, .pos = pos_last);
                if(find != -1)
                {
                    strdel(string, find, find + delimiter);
                    strins(string, insertstr, find, find + delimiter);
                }
            }
        }
    }



RE: ERRO EM MODULO - White_Blue - 15/01/2024

1. Ao postar código, sempre o faça em formato de texto, não em imagem, pois além de potencialmente obscurecer detalhes importantes que podem ajudar a resolver seu problema, não é possível editar o código.
2. Evite usar letras maiúsculas desnecessárias no título e no conteúdo do tópico, pois o uso excessivo de maiúsculas equivale a gritar.