C ve C++'ta Türkçe Karakter Sorunu ve Çözümü

C ve C++‘ta Türkçe Karakter Sorunu

[!TIP] Hızlı Çözüm: Tek Satır Kod Uzun uzadıya okumaya vaktiniz yoksa, işte sorunu çözen sihirli kod:

setlocale(LC_ALL, "Turkish");

C ve C++ programlamaya yeni başlayanların konsol ekranında en sık karşılaştığı sorunlardan biri Türkçe karakterlerin (ğ, ş, ı, İ, ç, ö) bozuk görünmesidir. Bu durum, varsayılan ASCII karakter setinin Türkçe karakterleri desteklememesinden kaynaklanır.

Bu sorunu çözmek için <locale.h> kütüphanesini kullanabiliriz. Bu kütüphane, programın bölge (locale) ayarlarını sistemin diline göre yapılandırmasını sağlar.

Nasıl Yapılır?

Yapmanız gereken tek şey, kodunuzun main fonksiyonu içine setlocale fonksiyonunu eklemektir.

C++ İçin Örnek:

#include <iostream> 
#include <locale.h> // Dil ayarları için gerekli kütüphane

using namespace std; 

int main() { 
    // Tüm yerel ayarları Türkçe olarak yapılandır
    setlocale(LC_ALL, "Turkish"); 
    
    cout << "Başarılı: Şu an Türkçe karakterleri (ç, ğ, ş) düzgün görebilirsin." << endl;
    
    return 0; 
}

C İçin Örnek:

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

int main() { 
    setlocale(LC_ALL, "Turkish"); 
    
    printf("Örnek: Çağrı, Işık, Şafak.\n");
    
    return 0; 
}

Önemli Notlar

  • setlocale(LC_ALL, "Turkish") komutu genellikle Windows derleyicilerinde doğrudan çalışır.
  • Eğer Linux veya farklı bir ortamda görüntüleme sorunu devam ederse, parametre olarak "tr_TR.UTF-8" veya varsayılan sistem dilini çekmek için sadece "" (boş tırnak) kullanmayı deneyebilirsiniz: setlocale(LC_ALL, "");
Please enable JavaScript to view the comments powered by Disqus.