Ana kuruluşumuz:
C, 1970’lerde Dennis Ritchie tarafından geliştirilmiş, hızlı, düşük seviyeye yakın, sistem programlama için güçlü bir dildir.
İşletim sistemleri (Linux’un büyük kısmı C ile yazılmıştır)
Gömülü sistemler
Oyun motorlarının çekirdekleri
Mikrokontrolcü programlama
Yüksek performans gerektiren uygulamalar
#include <stdio.h>
int main() {
printf("Merhaba Dünya!");
return 0;
}
#include <stdio.h> → Ekrana yazdırmak için gerekli kütüphaneyi ekler.
int main() → Programın başladığı yerdir.
printf() → Konsola yazı gönderir.
return 0; → Programın başarıyla bittiğini belirtir.
int yas = 15;
float boy = 1.75;
char harf = 'A';
int → tam sayı
float → ondalıklı sayı
char → tek karakter
Tip
Açıklama
int
tam sayılar
float
ondalıklı sayılar
double
daha hassas ondalıklı sayılar
char
tek karakter
long
daha büyük tamsayı
short
daha küçük tamsayı
int yas;
printf("Yaş gir: ");
scanf("%d", &yas);
✔ scanf kullanıcıdan veri alır.
✔ %d integer formatıdır.
✔ &yas → hafıza adresi gerekir.
int s = 10;
if (s > 5) {
printf("Büyük!");
} else {
printf("Küçük!");
}
Şart doğruysa if çalışır, değilse else.
Operatör
Açıklama
==
eşit
!=
eşit değil
>
büyük
<
küçük
>=
büyük eşit
<=
küçük eşit
for (int i = 0; i < 5; i++) {
printf("i = %d\n", i);
}
int i = 0;
while (i < 5) {
printf("%d ", i);
i++;
}
int i = 0;
do {
printf("%d ", i);
i++;
} while (i < 5);
int sayilar[3] = {10, 20, 30};
✔ Diziler aynı veri tipinde birden fazla değeri saklar.
int topla(int a, int b) {
return a + b;
}
int main() {
printf("%d", topla(5, 7));
}
✔ Fonksiyon, belirli bir işi yapan kod bloğudur.
int x = 10;
int *p = &x;
printf("%d", *p);
✔ Pointer, bir değişkenin hafıza adresini tutar.
✔ *p → pointer’ın gösterdiği değeri verir.
struct Ogrenci {
int yas;
char isim[20];
};
struct Ogrenci ali = {15, "Ali"};
✔ Birden fazla farklı veri tipini tek yerde toplar.
FILE *f = fopen("test.txt", "w");
fprintf(f, "Merhaba!");
fclose(f);
✔ fopen → dosya açar
✔ fprintf → dosyaya yazar
✔ fclose → kapatır
Terminalde:
gcc program.c -o program
./program
✔ GCC ile derleme yapılır.
✔ -o program → çıktı dosyasının adı.
Çok hızlı
Donanım kontrolü sağlar
Sisteme yakın
Geniş kullanım alanı
Bellek yönetimi manuel
Hata yapması kolay
Modern dillere göre daha düşük seviye