Yardım karakter ismi oluştururken i,ö,ü,ğ,ş hata

  • Konuyu açan Konuyu açan texas1343
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 3
  • Gösterim Gösterim 62
Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.

texas1343

MT Üye
MT Üye
Mesaj
643
Çözümler
28
Beğeni
623
Puan
799
Ticaret Puanı
0
selamın aleyküm karakter ismi oluştururken i,ö,ü,ğ,ş gibi harflere girince oluşturmuyor örnek Dark yapıyorum kabul ediyor ama İnönü yapıyorum kabul etmiyor türkçe karakter için ne yapmak lazım
 
locale_service.cpp Aç

Arat:
Genişlet Daralt Kopyala
int check_name_alphabet(const char * str)
{
    const char*    tmp;

    if (!str || !*str)
        return 0;

    if (strlen(str) < 2)
        return 0;

    for (tmp = str; *tmp; ++tmp)
    {
        // 알파벳과 수자만 허용
        if (isdigit(*tmp) || isalpha(*tmp))
            continue;
        else
            return 0;
    }

    return check_name_independent(str);
}


Değiştir:
Genişlet Daralt Kopyala
int check_name_alphabet(const char* str)
{
    const char* tmp;

    if (!str || !*str)
        return 0;

    if (strlen(str) < 2)
        return 0;

    for (tmp = str; *tmp; ++tmp)
    {
        if (isdigit(tmp) || isalpha(tmp))
            continue;
    //#ifdef USE_SPECIAL_CHARACTERS
        switch (*tmp)
        {
        case ' ':
        case '.':
        case '-':
        case '_':
        case '@':
        case '!':
        case '^':
        case '#':
        case '$':
        case '%':
        case '&':
        case '*':
        case '(':
        case ')':
            continue;
        }
    //#endif
    return 0;
    }

    return check_name_independent(str);
}
 
locale_service.cpp Aç

Arat:
Genişlet Daralt Kopyala
int check_name_alphabet(const char * str)
{
    const char*    tmp;

    if (!str || !*str)
        return 0;

    if (strlen(str) < 2)
        return 0;

    for (tmp = str; *tmp; ++tmp)
    {
        // 알파벳과 수자만 허용
        if (isdigit(*tmp) || isalpha(*tmp))
            continue;
        else
            return 0;
    }

    return check_name_independent(str);
}


Değiştir:
Genişlet Daralt Kopyala
int check_name_alphabet(const char* str)
{
    const char* tmp;

    if (!str || !*str)
        return 0;

    if (strlen(str) < 2)
        return 0;

    for (tmp = str; *tmp; ++tmp)
    {
        if (isdigit(tmp) || isalpha(tmp))
            continue;
    //#ifdef USE_SPECIAL_CHARACTERS
        switch (*tmp)
        {
        case ' ':
        case '.':
        case '-':
        case '_':
        case '@':
        case '!':
        case '^':
        case '#':
        case '$':
        case '%':
        case '&':
        case '*':
        case '(':
        case ')':
            continue;
        }
    //#endif
    return 0;
    }

    return check_name_independent(str);
}
Sadece bunla olmaz dediğimi de yapması lazım özellikle martysamada latin1 tutuyor player name Türkçe karakterleri desteklemez

Edit: şimdi kodlara baktım bunun konu ile alakası yok bu özel karakterler (alpha) için
 
Geri
Üst