Hoşgeldin Misafir

Konsolda TÜRKÇE karakter yazdırmak!

MiRaT

13 Kas 2017
2,077 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
-Aslında olay çok basit.Karakter desteğini sağlamak için setlocale() fonksiyonunu çağıracağız.Bunu yapmak için de kaynak koda locale.h başlık dosyasını eklememiz yeterli.

Örnek program:

// Konsola Türkçe karakter yazdırmak. by undeadhacker @ CW

#include <stdio.h>
#include <locale.h>

int main(){

setlocale(LC_ALL,"Turkish"); // bütün iş burada bitiyor

printf("İster Türkçe yazarım ");
printf("ister İngilizce...\\\\\\\\n");

system("pause");
return 0;
}

Kodları Dev-C++ ta derledim.

Biraz daha açıklayayım.

#include <locale.h> Bu kod setlocale() fonksiyonunu kullamamızı sağlıyor.Bütün işi setlocale() fonksiyonu yapıyor.Fonksiyona birinci parametre olarak LC_ALL değerini gönderiyoruz.Bu değer locale.h dosyası içinde tanımlanmış bir değerdir ve 0’a (sıfır) eşittir.Bunun yerine LC_CTYPE de yazabilirdik.Fonksiyonu LC_CTYPE değeri ile çağırsaydık, yine Türkçe karakter desteği sağlamış olurduk."Turkish" parametresi ile de Türkçe desteği vermek istediğimizi belirttik.

Uyarı:Bazı sistemlerde bu yöntem çalışmıyor.Mesela ingilizce Vista da çalışan bu kod ingilizce XP de çalışmadı.Ama benim sistemde bi yerelleştirme problemi olabilir.Sizin sisteminizde problem olacağını sanmam.Problem çıkarsa yardım etmek isterim.

setlocale() fonksiyonu ile daha ayrıntılı bilgi almak isteyenler için ingilizce kaynak veriyim: setlocale--