cz5
New member
Temel C (si) Dersleri
Biz böyle neler yazdık ne yapmaya çalıştık bu kodlarda nedir.Bu ne işe yarar?
Bilgisayara dedikki ekrana (ben geldim c sana merhaba) yazmasını emrettik oda yazacak.Mecbur çünkü artık ben senin anladığın dili ögreniyorum sende ben ne dersem onu yapacaksın dedik bilgisayara.
Ama nasıl söyledik yazdık da bilgisayar bizi anladı.
#include yazmakla biz bilgisayara
yazdığım programa <stdio.h> dosyasını eklemesini söyledik yani header file bu bizim kütüphanemiz yani yazcağımız programın özelliklerine göre önceden yazılmış fonksiyonların bulunduğu dosya
int main() ile hey bilgisayar program burdan başlar dedik
{
}
bu parantezlerle yazdığımız programın sınırını yada gövdesini belirledik
gövdemizin içinede komutları yazdık yani istediğimiz olayları yani
printf("ben geldim c sana merhaba");
En basit şekilde bilgisayara hükmettik.
[/COLOR]
Yukarda yazdığımız programı bölelim atomlarına
Burda bir hata varmı şimdi.Bilgisayar anlarmı böyle yazımdan.Evet anlar ama c dilini meslek edinmiş vatandaşlar sizi yadırgayabilirler.
Çünkü programın (Readability) okunurluğu kalmamiş olur.Dogrumu valla doğru.
Benden başka insanlarda anlasın dimi cimri olmamak için okunurluk önemlidir.(Sadece ben anlayım yok)
Kullandığımız özel karakterler ise
" iki tırnak
' tek tırnak
! ünlem işareti
^ şapka işareti
# diyez işareti
+ artı
- eksi
$ dolar işareti
% yüzde işareti
& ve işareti
{ } küme işareti
( ) parantez
[ ] köşeli parantez
= eşit işareti
? soru işareti
* yıldız
< > açısal parantez
> büyük işareti
< küçük işareti
Birkaç özel karakter daha var onlarıda ilerde yazacağız.Şimdi bulanmasın kafamız.
BLOK
{
}
parantezleri arasındaki bölgeye blok diyoruz.
FONKSİYON
X();
x bir fonksiyondur nasıl anladık. () parantezi öncesi olduğu için.Fonksiyonlar ( ) ile gösterilir
NESNE
a= 100 ;
b= 800;
a ve b bir nesnedir.Çünkü bellekte yer kaplayan ve içeriklerine ulaşabildiğimiz için.
a nın içeriği 100 ve b nin içeriği 800 dür.
İFADE
d=a*b;
bir fadedir.d diye bir değişken a ve b değişkeninin çarpımının değerini alır.
Değişken( d- a- b birer değişken) operatör (yani kullandığımız karakterler = *
ve sabitler (yukarda gördük 800 ve 100 bir sabittir) kombinasyonuna ifade diyoruzzzz
Öncelikle c (si) den bahsedelim.
Tarihi bizi pek bağlamaz ama dil kültürü olarak yararımıza olacaktır fakat bunu geçiyorum. C Tarihini bilmek yazarken yada ögrenirken bize bir avantaj sağlamaz.
C bir sistem programlama dilidir.Günümüzde uçaklardan - cep telefonlarına kadar bir çok sistemde kullanılır.
C ögrenmeden önce yada (anlamaya başlamadan önce) bilinmesi veya ögrenilmesi gereken şartlar vardır.Peki bu şartları ögrenmeden başlarsam ne olur derseniz
bir noktada tıkanır (ilerleyemez) sıkılırsınız buda isteğininiz azalmasına neden olur.(bence dili ögrenmeye başlamadan önce şartları gerçekleştirin)
Şimdi şartlara bakalım nedir bu şartlar.
1- En önemlisi istek ve azim
2- Binary sayı sistemi ( biz 10 luk (desimal) kullanırız ama bilgisayar kıt kafalı sadece 0 ve 1 anlıyor yani (2 lik sayı sistemi)
3-Algoritma bilgisi (bu şartı daha sonra yada ögrenirkende gerçekleştirebiliriz)
Neler katar bize C
1- Bilgisayarın nasıl işlem yaptığını anlarız
2- Dos (Disk Operating System) ile ilgilenmeye başlar gerçek bir üstat olma yolunda adım atarız
2- PHP,JAVA ve birçok dil C den türediği için ögrenimleri çok çok basit olacaktır.Web de karizmamız artacak söz söyleyebilir durumda olacagız
3- İşletim sistemi ne işe yarar neden bu kadar önemli olduğunu anlarız
Şartlar ok se başlayalım ve ilk programımızı yazalım isterseniz.
Tarihi bizi pek bağlamaz ama dil kültürü olarak yararımıza olacaktır fakat bunu geçiyorum. C Tarihini bilmek yazarken yada ögrenirken bize bir avantaj sağlamaz.
C bir sistem programlama dilidir.Günümüzde uçaklardan - cep telefonlarına kadar bir çok sistemde kullanılır.
C ögrenmeden önce yada (anlamaya başlamadan önce) bilinmesi veya ögrenilmesi gereken şartlar vardır.Peki bu şartları ögrenmeden başlarsam ne olur derseniz
bir noktada tıkanır (ilerleyemez) sıkılırsınız buda isteğininiz azalmasına neden olur.(bence dili ögrenmeye başlamadan önce şartları gerçekleştirin)
Şimdi şartlara bakalım nedir bu şartlar.
1- En önemlisi istek ve azim
2- Binary sayı sistemi ( biz 10 luk (desimal) kullanırız ama bilgisayar kıt kafalı sadece 0 ve 1 anlıyor yani (2 lik sayı sistemi)
3-Algoritma bilgisi (bu şartı daha sonra yada ögrenirkende gerçekleştirebiliriz)
Neler katar bize C
1- Bilgisayarın nasıl işlem yaptığını anlarız
2- Dos (Disk Operating System) ile ilgilenmeye başlar gerçek bir üstat olma yolunda adım atarız
2- PHP,JAVA ve birçok dil C den türediği için ögrenimleri çok çok basit olacaktır.Web de karizmamız artacak söz söyleyebilir durumda olacagız
3- İşletim sistemi ne işe yarar neden bu kadar önemli olduğunu anlarız
Şartlar ok se başlayalım ve ilk programımızı yazalım isterseniz.
Kod:
[COLOR="Red"]
[COLOR="Blue"]#[/COLOR]include[COLOR="Blue"]<[/COLOR]stdio.h[COLOR="Blue"]>[/COLOR]
int main[COLOR="Blue"]()[/COLOR]
[COLOR="Blue"]{[/COLOR]
printf[COLOR="Blue"]([/COLOR][COLOR="Green"]"[/COLOR]ben geldim c sana merhaba [COLOR="Green"]"[/COLOR][COLOR="Blue"])[/COLOR][COLOR="Green"];[/COLOR]
[COLOR="Blue"]}[/COLOR]
[/COLOR]
[COLOR="Blue"]
Biz böyle neler yazdık ne yapmaya çalıştık bu kodlarda nedir.Bu ne işe yarar?
Bilgisayara dedikki ekrana (ben geldim c sana merhaba) yazmasını emrettik oda yazacak.Mecbur çünkü artık ben senin anladığın dili ögreniyorum sende ben ne dersem onu yapacaksın dedik bilgisayara.
Ama nasıl söyledik yazdık da bilgisayar bizi anladı.
#include yazmakla biz bilgisayara
yazdığım programa <stdio.h> dosyasını eklemesini söyledik yani header file bu bizim kütüphanemiz yani yazcağımız programın özelliklerine göre önceden yazılmış fonksiyonların bulunduğu dosya
int main() ile hey bilgisayar program burdan başlar dedik
{
}
bu parantezlerle yazdığımız programın sınırını yada gövdesini belirledik
gövdemizin içinede komutları yazdık yani istediğimiz olayları yani
printf("ben geldim c sana merhaba");
En basit şekilde bilgisayara hükmettik.
[/COLOR]
C de KULLANDIĞIMIZ ÖZEL KARAKTERLER- ATOMLAR ve KAVRAMLAR
C öyle bir dilki yazım hatalarını kesinlikle kabul etmiyor.(A) harfi ile (a) harfi tamamen birbirinden bağımsızdır.
ATOM=Programlama dili için anlam taşıyan en küçük birime atom diyolar.Bizde eyvallah diyoruz.
C öyle bir dilki yazım hatalarını kesinlikle kabul etmiyor.(A) harfi ile (a) harfi tamamen birbirinden bağımsızdır.
ATOM=Programlama dili için anlam taşıyan en küçük birime atom diyolar.Bizde eyvallah diyoruz.
Yukarda yazdığımız programı bölelim atomlarına
Kod:
[COLOR="Red"]
# include < stdio.h >
int
main
(
)
{
printf
(
"ben geldim c sana merhaba"
)
;
}
[/COLOR]
Burda bir hata varmı şimdi.Bilgisayar anlarmı böyle yazımdan.Evet anlar ama c dilini meslek edinmiş vatandaşlar sizi yadırgayabilirler.
Çünkü programın (Readability) okunurluğu kalmamiş olur.Dogrumu valla doğru.
Benden başka insanlarda anlasın dimi cimri olmamak için okunurluk önemlidir.(Sadece ben anlayım yok)
Kullandığımız özel karakterler ise
" iki tırnak
' tek tırnak
! ünlem işareti
^ şapka işareti
# diyez işareti
+ artı
- eksi
$ dolar işareti
% yüzde işareti
& ve işareti
{ } küme işareti
( ) parantez
[ ] köşeli parantez
= eşit işareti
? soru işareti
* yıldız
< > açısal parantez
> büyük işareti
< küçük işareti
Birkaç özel karakter daha var onlarıda ilerde yazacağız.Şimdi bulanmasın kafamız.
BLOK
{
}
parantezleri arasındaki bölgeye blok diyoruz.
FONKSİYON
X();
x bir fonksiyondur nasıl anladık. () parantezi öncesi olduğu için.Fonksiyonlar ( ) ile gösterilir
NESNE
a= 100 ;
b= 800;
a ve b bir nesnedir.Çünkü bellekte yer kaplayan ve içeriklerine ulaşabildiğimiz için.
a nın içeriği 100 ve b nin içeriği 800 dür.
İFADE
d=a*b;
bir fadedir.d diye bir değişken a ve b değişkeninin çarpımının değerini alır.
Değişken( d- a- b birer değişken) operatör (yani kullandığımız karakterler = *
DERLEYİCİLER
Peki biz bu kodları nereye yazacaz ve neden yazacaz dersiniz
Bilgisayarın anladığı dil 0 ve 1 yukardada bahsettik.Bu dile Assembly denir.(Makina dili)
Burda derleyiciler giriyor devreye.Derleyici bizim yazdığımız C kodlarını makina diline(assembly) çevirir.Aksi bir durumda bilgisayar bizi yine anlamayacaktır .Dedikya kıt kafalı diye :durdurun
Peki nerden bulacaz bu derleyicileri.En basiti ve kolayı DEV C++ dir.Ücretsiz ve nette bol bulunur.Tabi başka derleyicilerde mevcut.
Kütüphane dosyasına (header file) ihtiyaç duydugunuzda DEV C++ kendi sitesinden rahat bir şekilde temin ediliyor.Türkçe olarakta dil seçeneği mevcut.
VERİ ve NESNE TÜRLERİ
int =Tam sayıları kapsar.100 300 500 gibi.
Char=Karekterleri kapsar. a b c d gibi
float=Ondalıklı sayıları kapsar. (6.765) (9.1) (3.2) gibi.
Ana veri türleri olarak bunlardır.Birde bunlarda atl sınıfları mevcuttur.Ama neden bunlarda alt sınıflara bölünmüş ?
Demiştikya bellekte yer kaplar bunlar.Bellekte kapladıkları yere göre sınıflandırılılar.
-----------int veri türünün alt sınıflarına bakalım----------
int(TAM SAYI) türü bellekte 16 bit yani 2 bayt yer kaplar.Sınırı ise -32768 ile + 32 767 dir.
Nerden çıktı bu - 32768 ile + 32767 . İşte burda bit bayt ve binary sistem ( 2 li sayı sistemi) devreye girdi.Demiştikya.Şartlardan biriydi.
unsigned int(İŞARETSİZ TAM SAYI)Buda 16 bit yani 2 bayt yer kaplar ama sınırı 0 ile 65535 dir.- (eksi) bir sayı verilemez tür olarak.
long int(İŞARETLİ TAM SAYI)Bu ise 32 bit yani 4 bayt yer kaplar.Sınırı ise - 2.147.483.648 ile + 2.147.483.647 dir.
Peki biz bu kodları nereye yazacaz ve neden yazacaz dersiniz
Bilgisayarın anladığı dil 0 ve 1 yukardada bahsettik.Bu dile Assembly denir.(Makina dili)
Burda derleyiciler giriyor devreye.Derleyici bizim yazdığımız C kodlarını makina diline(assembly) çevirir.Aksi bir durumda bilgisayar bizi yine anlamayacaktır .Dedikya kıt kafalı diye :durdurun
Peki nerden bulacaz bu derleyicileri.En basiti ve kolayı DEV C++ dir.Ücretsiz ve nette bol bulunur.Tabi başka derleyicilerde mevcut.
Kütüphane dosyasına (header file) ihtiyaç duydugunuzda DEV C++ kendi sitesinden rahat bir şekilde temin ediliyor.Türkçe olarakta dil seçeneği mevcut.
VERİ ve NESNE TÜRLERİ
int =Tam sayıları kapsar.100 300 500 gibi.
Char=Karekterleri kapsar. a b c d gibi
float=Ondalıklı sayıları kapsar. (6.765) (9.1) (3.2) gibi.
Ana veri türleri olarak bunlardır.Birde bunlarda atl sınıfları mevcuttur.Ama neden bunlarda alt sınıflara bölünmüş ?
Demiştikya bellekte yer kaplar bunlar.Bellekte kapladıkları yere göre sınıflandırılılar.
-----------int veri türünün alt sınıflarına bakalım----------
int(TAM SAYI) türü bellekte 16 bit yani 2 bayt yer kaplar.Sınırı ise -32768 ile + 32 767 dir.
Nerden çıktı bu - 32768 ile + 32767 . İşte burda bit bayt ve binary sistem ( 2 li sayı sistemi) devreye girdi.Demiştikya.Şartlardan biriydi.
unsigned int(İŞARETSİZ TAM SAYI)Buda 16 bit yani 2 bayt yer kaplar ama sınırı 0 ile 65535 dir.- (eksi) bir sayı verilemez tür olarak.
long int(İŞARETLİ TAM SAYI)Bu ise 32 bit yani 4 bayt yer kaplar.Sınırı ise - 2.147.483.648 ile + 2.147.483.647 dir.