Neler yeni
MEGAForum - Teknoloji Forumu

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı yada giriş yapmalısınız. Forum üye olmak tamamen ücretsizdir.

  • Web sitemizin içeriğine ve tüm hizmetlerimize erişim sağlamak için Web sitemize kayıt olmalı ya da giriş yapmalısınız. Web sitemize üye olmak tamamen ücretsizdir.
  • Sohbetokey.com ile canlı okey oynamaya ne dersin? Hem sohbet et, hem mobil okey oyna!
  • Soru mu? Sorun mu? ''Bir Sorum Var?'' sistemimiz aktiftir. Paylaşın beraber çözüm üretelim.

Konsolda TÜRKÇE karakter yazdırmak!

ByOnur58

MFC Üyesi
  • Üyelik Tarihi
    7 Ocak 2015
  • Mesajlar
    2,114
  • MFC Puanı
    10
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()
 
Üst Alt