avertissement: constante de caractère multi-caractère

Je veux avoir un tableau de l’alphabet grec et voici ce que je fais:

wchar_t pcletters[30] = {'α' , 'ά' , 'β' , 'γ' , 'δ' , 'ε' , 'ζ' , 'η', 'θ' , 'ι' , 'κ' , 'λ' , 'μ' , 'ν','ξ' , 'ο' , 'π' , 'ρ' , 'σ' , 'τ' , 'υ' , 'φ' , 'χ' , 'ψ' , 'ω', 'έ' , 'ή' , 'ί' , 'ό' , 'ύ' , 'ώ'} ; 

aussi et ai une ligne setlocale(LC_CTYPE, "") .

Cependant, je reçois un avertissement: constante de caractère multi-caractères [-Wmultichar]. De plus quand je peux vérifier si l’une de ces lettres est dans une entrée utilisateur en faisant:

 if (userword[i] == pcletters[j]) {//do stuff} 

Ça n’a pas l’air de marcher. -Pourquoi je reçois cet avertissement? -Y at-il un moyen de changer pcletters de manière à pouvoir comparer le userword[i] == pcletters[j]

Remarque: userword est défini comme suit: wchar_t userword[40] .

Utilisez des littéraux de caractères larges:

 wchar_t pcletters[30] = {L'α' , ... ^ 

Notez que cela ne fonctionnera que sur les plates-formes où les lettres que vous écrivez sont un seul caractère large. cela devrait fonctionner sous Windows, où wchar_t est UCS-2.