C standart kütüphanesi
C standard kütüphanesi veya libc, C programlama dilinin ISO C standardında belirlenmiş standard kütüphanesidir.[1] ANSI C'nin başlangıcından itibaren, onun da bir üst kümesi olan POSIX C kütüphanesiyle aynı anda geliştirilmiştir.[2][3]
ANSI C'nin ISO'ya kabulünden sonra[4] ISO C kütüphanesi olarak da adlandırılmaya başlanmıştır.
Gerçeklenimleri
Ad | Websitesi |
---|---|
Bionic | [1] |
BSD libc | BSD varyantına göre değişir. |
dietlibc | [2] |
GNU C Library (glibc) | [3] |
klibc | [4] |
LLVM libc | [5] |
musl | [6] |
Newlib | [7] |
picolibc | [8] |
μClibc | [9] |
ANSI C kütüphanesi başlık dosyaları
Ad | Eklendiği standard | Açıklama |
---|---|---|
<assert.h> | Kodda mantık hatalarını bulmaya yarayan, hata ayıklamada kullanılabilecek assert makrosunu tanımlar. | |
<complex.h> | C99 | Karmaşık sayılarla çalışmaya yarayan çeşitli fonksiyonları tanımlar. |
<ctype.h> | char türlerini test etmeye (isalpha , isdigit vd.) veya dönüştürmeye (tolower , toupper ) yarayan fonksiyonları tanımlar. | |
<errno.h> | Hata kodlarını test etmeye yarayan makroları barındırır. | |
<fenv.h> | C99 | Bilgisayar ortanımda reel sayıların (floating-point) çalışma ortamıyla ilgiyi fonksiyonları tanımlar. |
<float.h> | Reel sayıların gerçeklenime özgü (implementation-specific) özelliklerini (min, max, epsilon gibi) sağlayan makroları tanımlar. | |
<inttypes.h> | C99 | Belirli genişlikteki integer türlerini tanımlar. |
<iso646.h> | NA1 | ISO 646 karakter setinde kod yazabilmek için standard belirteçler (token) yerine kullanılabilecek alternatifler sunar. |
<limits.h> | Tam sayı (integer) türlerinin gerçeklenime özgü özelliklerini sağlayan makroları tanımlar. | |
<locale.h> | Lokalizasyon araçları sağlar. | |
<math.h> | Çeşitli matematik fonksiyonları sağlar. | |
<setjmp.h> | Fonksiyon çağrısı ortasında program akışını değiştiren setjmp ve longjmp makrolarını sağlar. | |
<signal.h> | Sinyal işleme fonksiyonları sağlar. | |
<stdalign.h> | C11 | Nesnelerin hafızaya nasıl yerleştiğini (alignment) belirleyen makroları tanımlar. |
<stdarg.h> | Fonksiyona değişebilen (variadic) sayıda argüman geçilebilmesine olanak tanıyan makroları tanımlar. | |
<stdatomic.h> | C11 | İş parcacıkları (thread) arasında paylaşılmış veriler üzerinde aynı anda tek bir işlem (atomic) yapmaya yarayan makro ve fonksiyonları tanımlar. |
<stdbool.h> | C99 | Bool türü tanımını sağlar. |
<stddef.h> | Kullanışlı pek çok tür ve makro sağlar. | |
<stdint.h> | C99 | Belli bit sayısı genişliğinde integer türleri tanımlar. |
<stdio.h> | Giriş ve çıkış fonksiyonları sağlar. | |
<stdlib.h> | Çeşitli string sayı dönüşümü, rastgele gibi görünen (pseudo-random) sayı, dinamik hafıza yönetimi ve program araçları ile ilgili fonksiyonlar sağlar. | |
<stdnoreturn.h> | C11 | Bir dönüş türü olmayan fonksiyonları belirtmede kullanılır. |
<string.h> | Çeşitli string işleme fonksiyonları sağlar. | |
<tgmath.h> | C99 | Bir grup tür-jenerik makro tanımlayarak çeşitli matematik fonksiyonlarının türden bağımsız olarak çağrılmasına izin verir. |
<threads.h> | C11 | İş parçacıklarını (thread), karşılıklı dışlamaları (mutex) ve koşul değişkenlerini (condition variable) yönetmeye yarayan fonksiyonları sağlar. |
<time.h> | Tarih ve zaman işlemleriyle ilgili fonksiyonları sağlar. | |
<uchar.h> | C11 | Unicode karakterler üzerinde işlem yapmak için tür ve fonksiyonlar sağlar. |
<wchar.h> | NA1 | wchar (wide char), ASCII karakter kümesinin dışında, bir bayttan daha büyük karakterlerden oluşan stringleri işlemek için çeşitli fonksiyonlar sağlar. |
<wctype.h> | NA1 | wchar türleri için test ve dönüşüm fonksiyonları sağlar. |
Ayrıca bakınız
- C programlama dili
Kaynakça
- ^ ISO/IEC (2018). ISO/IEC 9899:2018(E): Programming Languages - C §7
- ^ "The GNU C Library – Introduction". gnu.org. 8 Mart 2009 tarihinde kaynağından arşivlendi. Erişim tarihi: 5 Aralık 2013.
- ^ "Difference between C standard library and C POSIX library". stackoverflow.com. 2012. 8 Aralık 2012 tarihinde kaynağından arşivlendi. Erişim tarihi: 4 Mart 2015.
- ^ "C Standards". C: C Standards (İngilizce). Keil. 1 Temmuz 2001 tarihinde kaynağından arşivlendi. Erişim tarihi: 24 Kasım 2011.