3 puan yazan GN⁺ 2024-10-16 | 1 yorum | WhatsApp'ta paylaş
  • Modern C'nin C23 sürümü ücretsiz olarak indirilebiliyor. Temel amaç, bunun yeni C standardı olan C23'e uyumlu olacak şekilde güncellenmiş olması.
  • Yeni standardın içeriği, yayımlanmış belgelerdeki en yakın haliyle sunuluyor. Başlıca derleyicilerdeki yeni özelliklerin çoğu zaten uygulanmış durumda.

C23'teki başlıca değişiklikler ve eklemeler

  • Tamsayılarla ilgili değişiklikler: _BitInt(N) adlı yeni bir bit duyarlı türün eklenmesi, taşma denetimi için yeni bir C standart kütüphane başlığı, bit işlemleri için bir başlık eklenmesi, modern mimarilerde 128 bit tür olasılığı, enum türlerinde kayda değer iyileştirmeler.
  • Yeni kavramlar: nullptr sabiti ve onun temel türü, özniteliklerle sözdizimsel açıklamalar, türe göre genel programlama için daha fazla araç (ör. auto ve typeof ile tür çıkarımı), {} kullanarak varsayılan başlatma (değişken uzunluklu diziler dahil), tüm türlerin adlandırılmış sabitleri için constexpr.
  • Ek materyaller: bileşik ifadeler ve lambda'lar, "uluslararasılaşma" olarak adlandırılan kapsamlı program başarısızlığı yaklaşımına dair tartışmalar eklendi. Mevcut platformlarda C23'e kolay geçiş için geçici include başlıkları ve ekler de bulunuyor.

GN⁺ özeti

  • Modern C'nin C23 sürümü, yeni C standardını yansıtacak şekilde güncellendi ve başlıca derleyicilerde pek çok özellik zaten uygulanmış durumda.
  • C23, tamsayı türleri, türe göre genel programlama ve varsayılan başlatma gibi alanlarda önemli iyileştirmeler sunuyor.
  • Bu sürüm, C programlama dilinin en güncel standardını anlamak ve kullanmak için faydalı; özellikle yeni özellikleri hızlıca öğrenmek isteyen geliştiricilere yardımcı olabilir.
  • C23'e benzer özellikler sunan diğer diller arasında C++'ın güncel standartları da yer alıyor.

1 yorum

 
GN⁺ 2024-10-16
Hacker News görüşleri
  • Destek GCC 11 ile başladı; bu da Ubuntu 22.04'te kullanılabiliyor. C26 desteği de görülebiliyor
  • C ve C++ farklıdır; bunları karıştırmamak yönünde önemli bir tavsiye var
  • C kitapları listesi arıyordum ama cevabı kendim buldum. Modern C orta seviye olarak sınıflandırılıyor
  • macOS Preview'da kenar çubuğundaki içindekiler düzgün çalışmıyor
  • C'nin pratikte neden C99'da takılı kaldığını açıklayan bir yazı arıyorum. C11 ve sonrası özellikleri kullanan neredeyse hiç proje olmadığı söyleniyor
  • Dinozor maskotunun hâlâ orada olmasına sevindim. Bence iyi bir kitap
  • Derleyiciler yetiştiğinde #embed bekliyorum. O zamana kadar Golang kullanıyorum
  • [[unsequenced]], [[maybe_unused]], [[noreturn]] gibi özniteliklerin kitap boyunca fazla kullanıldığını düşünüyorum. Yazarın isteğe bağlı kullanılabilecek şeyleri tüm kod örneklerine koyması abartılı geliyor
  • Tamamen açık, iyi tanımlanmış ve taşınabilir bit alanları istiyorum
  • En sevdiğim kitaplardan biri