C De Türkçe Karakter Sorunu!
-
Arkadaslar c de kucuk olan turkce karakteri nasıl buyuk harf haline getirebilirim?toupper fonksiyonu turkce karakterleri buyutmuyormus kendimiz bi fonkisyon yazıcaz ama nasıl?
-
Türkçe karakterlerin olduğu bir dizi yap. 2. bir diziye de aynı sıra ile büyük harflerini yaz. Fonksiyona gelen harf o dizide yoksa normal büyük harfe çevir (toupper), gelen harf o dizide varsa aynı sırada 2. dizideki karşılığını yolla.
char kucuk[5]= {"i","ı","ö","ç","ş","ğ"};
char buyuk[5]= {"İ","I","Ö","Ç","Ş","Ğ"};
Mesela döngü ile kontrol edeceksen if (gelen==kucuk[i]) return buyuk[i];
-
dedigin gibi yaptım fakat simdide şu sorun var.karakter dizisini kendim atarsam buyutuyo fakat klavyeden alırken veya bi dosyadan okurken ordaki turkce karakterler kucuk kalıyo :S..
aklıma takılan bi soru daha mesela klavyeden girdigim turkce karakteri yazdırdıgımda turkce karakterler duzgun yazılıyo (mesela çETİN) ama diziye atamayı kendim yaptıgımda turkce karakterler yerine sacma sekiller gozukuyo bunun sebebi nedir acaba ?
edit:dosyadan okudugum turkce karakterler buyuk gozukuyo (ÇETİN gibi) ama klavyeden girilenlerde sorun var..
-
Ben daha önce Türkçe karakter problemi yaşamadığım için pek bilgim yok. Google'da c türkçe karakter diye aratırsan bulursun. Geçenlerde görmüştürm bir yerlerde ama tam hatırlamıyorum. Karakterin ascii kodu üzerinden işlem yaparsan belki sorun olmaz. Klavyeden girilen karakterin ascii koduna bak bakalım ne geliyor. Sonra o ascii kodunu ekrana çıktı al doğru karakter mi çıkacak bak.
-
onlara baktım mesela ş nin ascii karsılıgını -128 gibi bi sayi olarak gosteriyor.bu klavyeden girildiginde diziye atama yapılınca dogru gosteriyo :S
-
ya klavyeden gelirken türkçe karakterler gelmiyor ya da kullandığın değişkende sorun var belki. kodları yaz istersen buraya.programlama sitelerinde mutlaka bulursun çözümü ben görüyordum daha önceden. Bulamazsan da ceviz.net'e c++ bölümüne konu açarsan yardımcı olurlar.
-
ok kodlar cok uzun buraya koymayım simdi dedigin yere acıcam konuyu saol ilgilendigin icin..