shrpnl 1
shrpnl
YusufŞimşek14 1
YusufŞimşek14
berzahx 2
berzahx
xranzei 1
xranzei
Agora Metin2 1
Agora Metin2
Bvural41 1
Bvural41
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

Temel Veri Tipleri.

  • Konuyu başlatan Konuyu başlatan bluefan
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 508

bluefan

Level 7
TM Üye
Üye
Katılım
14 Ağu 2009
Konular
421
Mesajlar
1,971
Reaksiyon Skoru
39
Altın Konu
0
TM Yaşı
16 Yıl 10 Ay 6 Gün
Başarım Puanı
140
MmoLira
-2
DevLira
0
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

Bilgisayarda herhangi bir aritmetik veya mantık işleminin yapılabilmesi için verilerin belirli şekillerde depolanması gerekir. C dilinde birkaç temel veri tipi vardır bunlara bir göz atalım.

32 bitlik bir bilgisayarda:
1 - char: -128 ile +127 içinde bir sayı değerine sahip olabilir. Uzunluğu: 1 byte (8 bit)
2 - short: -32767 ile +32767 arasında değer alabilir. Uzunluğu: 2 byte(16 bit)
3 - int: -2,147,483,648 ile +2,147,483,648 arasında bir değer alabilir. Uzunluğu: 4 byte(32 bit)

tanımlama örnek:
C Kod

char b;
short i;
int l;


Signed / Unsigned (işaretli / işaretsiz)
Kısaca; bir veri tipi (örn: char) unsigned ile tanımlandıysa (-) değer alamaz ve alacağı maksimum (+) değer, alabildiği (-) değer kadar genişler. Yani;
C Kod

signed char b;
char c;

şeklinde tanımlanan ifadelerde b ve c -128 ile +127 arası değer alabilirken;
C Kod

unsigned char d

şeklinde tanımlanan ifadede d, 0-255 arası değer alabilir.

Peki bu neden böyle?
şimdi 1 ve 0lara inersek. Bilgisayarı geliştiren elemanlar hep sınırlı büyüklükle uğraştılar. Bu sınırlı büyüklükler içinde negatif sayıları belirtmek için de basit ve kullanışlı bir yol bulmaları gerekiyordu. İşte bunun sonucu işaret biti denilen bir şey ortaya çıktı. Şimdi diyelim ki elimizde 8 bit veri alanı var. bu 8 bitlik alanın soldan ilk biti işaret bitidir. Eğer bu bit 1 ise sayı -, 0 ise +dır.
Örnek:
01111110 = 126
01111111 = 127
10000000 = -128
10000001 = -127

Matematiksel olarak da zaten ilk bite müdahale etmek sayının 2'ye bölünmesine yol açacaktır. Eğer neden +127 ile -128 arasında? niye ikisi de 128 değil derseniz, +127ye kadar olan sayılara 0'ı da dahil ediyoruz. Yani arada bir de sıfır var. Daha açık konuşmak gerekirse 0-255 arası sayıları kabul eden 8 bitlik bir veri alanı aslında 256 değer almaktadır (Çünkü sıfır da var). Tam ortadan ikiye ayırırsak 0 ile 127 ve -128 ile -1 olarak iki ayrı alana bölünür.

Mantığı anladıysak devam edelim.

şimdi ekrana bir şey yazdırmak için
C Kod

printf("yazdırmak istediğimiz yazı");

diyebiliyoruz.
klavyeden giriş almak için de
C Kod

scanf("%d", &x);

gibi bir ifade kullanmalıyız. Buradaki "%d", gireceğimiz değerin bir sayı olması gerektiğini gösterir. &x ise x değişkeninin adresidir. Buna ileride değineceğiz.
Ha unutmadan
C Kod

//deneme

kodundaki // yorum başlangıcıdır. Bir satırda kullanıldıktan sonraki tüm karakterleri derleyici görmezden gelir.
Bir de
C Kod

/*deneme metni
deniyoruz tekrar */

şeklinde birkaç satırlık yorum yazabilirsiniz.

Örnek Program: Programa girilen iki sayıyı toplayıp sonucu yazan program.
C Kod
1
2
3
4
5
6
7
8
9
10
11
12
13


#include <stdio.h>
main()
{
int a, b, sonuc;
printf("Birinci sayi: ");
scanf("%d", &a); // Birinci sayıyı klavyeden alıyor.
printf("Ikinci sayi: ");
scanf("%d", &b); // İkinci sayıyı klavyeden alıyor.
sonuc = a + b;
printf("Sonuc: %d", sonuc); // Sonuç ekrana yazılıyor.
getchar();
return 0;
}
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst