C# Programlama Veri Tipleri

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
▃ ▅ ησ ♥ яєѕρєcт ▅ ▃
Süper Üye
Katılım
24 Eyl 2016
Mesajlar
600
Tepki puanı
10
Ödüller
9
9 HİZMET YILI
Veri Tipleri
Veri tipi (data type) program içinde kullanılacak değişken, sabit, fonksiyon isimleri gibi tanımlayıcıların tipini, yani bellekte ayrılacak bölgenin büyüklüğünü, belirlemek için kullanılır. Bir programcı, bir programlama dilinde ilk olarak öğrenmesi gereken, o dile ait veri tipleridir. Çünkü bu, programcının kullanacağı değişkenlerin ve sabitlerin sınırlarını belirler. C programlama dilinde dört tane temel veri tipi bulunmaktadır. Bunlar:
     char
     int
     float
     double

Fakat bazı özel niteleyiciler vardır ki bunlar yukarıdaki temel tiplerin önüne gelerek onların türevlerini oluşturur. Bunlar:
     short
     long
     unsigned

Bu niteleyiciler sayesinde değişkenin bellekte kaplayacağı alan isteğe göre değiştirilebilir. Kısa (short), uzun (long), ve normal (int) tamsayı arasında yalnızca uzunluk farkı vardır. Eğer normal tamsayı 32 bit (4 bayt) ise uzun tamsayı 64 bit (8 bayt) uzunluğunda ve kısa tamsayı 16 biti (2 bayt) geçmeyecek uzunluktadır. İşaretsiz (unsigned) ön eki kullanıldığı taktirde, veri tipi ile saklanacak değerin sıfır ve sıfırdan büyük olması sağlanır. İşaretli ve işaretsiz verilerin bellekteki uzunlukları aynıdır. Fakat, işaretsiz tipindeki verilerin üst limiti, işaretlinin iki katıdır.

 NOT
Kısa ve uzun tamsayı tutacak tanımlayıcılar için int anahtar kelimesinin yazılmasına gerek yoktur.
    short s;  /* short int s; anlamında */
    long k;   /* long int k;  anlamında */


Bir C programı içerisinde, veri tiplerinin bellekte kapladığı alan sizeof operatörü ile öğrenilebilir. İlgi cekici olan, bu alanların derleyiciye ve işletim sistemine bağlı olarak değişiklik göstermesidir. Program 2.1'de, sizeof operatörü kullanılarak, veri tiplerinin bellek uzunlularının nasıl ekrana yazdırılacağı gösterilmiştir. Programın çıktısı, farklı derleyiciler ve işletim sisteminde denendiğinde bu durum daha iyi anlaşılır. Lütfen inceleyin.
Bağlantıları görmek için lütfen Giriş Yap
 Değişken tipleri ve türevlerinin bellekte kapladıkları alanlar

01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
18:

/* 02prg01.c : sizeof operatörünün kullanımı */

#include <stdio.h>

main()
{
 printf( "char           : %d bayt\n", sizeof(char));
 printf( "short          : %d bayt\n", sizeof(short));
 printf( "int            : %d bayt\n", sizeof(int));
 printf( "long           : %d bayt\n", sizeof(long));
 printf( "unsigned char  : %d bayt\n", sizeof(unsigned char));
 printf( "unsigned short : %d bayt\n", sizeof(unsigned short));
 printf( "unsigned int   : %d bayt\n", sizeof(unsigned int));
 printf( "unsigned long  : %d bayt\n", sizeof(unsigned long));
 printf( "float          : %d bayt\n", sizeof(float));
 printf( "double         : %d bayt\n", sizeof(double));
 printf( "long double    : %d bayt\n", sizeof(long double));
}


ÇIKTI
Windows (32 bit) Turbo C
Windows (32 bit) Salford
Linux (32 bit) GCC
Linux (64 bit) GCC
char           : 1 bayt
short          : 2 bayt
int            : 2 bayt
long           : 4 bayt
unsigned char  : 1 bayt
unsigned short : 2 bayt
unsigned int   : 2 bayt
unsigned long  : 4 bayt
float          : 4 bayt
double         : 8 bayt
long double    : 10 bayt
char           : 1 bayt
short          : 2 bayt
int            : 4 bayt
long           : 4 bayt
unsigned char  : 1 bayt
unsigned short : 2 bayt
unsigned int   : 4 bayt
unsigned long  : 4 bayt
float          : 4 bayt
double         : 8 bayt
long double    : 10 bayt
char           : 1 bayt
short          : 2 bayt
int            : 4 bayt
long           : 4 bayt
unsigned char  : 1 bayt
unsigned short : 2 bayt
unsigned int   : 4 bayt
unsigned long  : 4 bayt
float          : 4 bayt
double         : 8 bayt
long double    : 12 bayt
char           : 1 bayt
short          : 2 bayt
int            : 4 bayt
long           : 8 bayt
unsigned char  : 1 bayt
unsigned short : 2 bayt
unsigned int   : 4 bayt
unsigned long  : 8 bayt
float          : 4 bayt
double         : 8 bayt
long double    : 16 bayt

int veritipi ve türevleri ile hesaplanabilecek en küçük ve en büyük tamsayılar için aşağıdaki formül kullanılabilir:
Alt sınır = -28*sizeof(tip) 
Üst sınır = 28*sizeof(tip)-1
Örneğin 4 baytlık bir int tipi için:
Alt sınır = -28*sizeof(int) = -232 = -2147483648
Üst sınır = 28*sizeof(int)-1 = 232-1 = 2147483647
Tablo 2.1'de bütün tipler, bellekte kapladıkları alanlar ve hesaplanabilcek (bellekte doğru olarak saklanabilecek) en büyük ve en küçük sayılar listelenmiştir.
Tablo 2.1: Değişken tipleri ve bellekte kapladıkları alanlar

Veri Tipi
Açıklama
Bellekte işgal ettiği boyut (bayt)
Alt sınır
Üst sınır
char
Tek bir karakter veya
küçük tamsayı için
1
-128
127
unsigned char
0
255
short int
Kısa tamsayı için
2
-32,768
32,767
unsigned short int
0
65,535
int
Tamsayı için
4
-2,147,483,648
2,147,483,647
unsigned int
0
4,294,967,295
long int
Uzun tamsayı için
8
 -9,223,372,036,854,775,808
9,223,372,036,854,775,807
unsigned long int
0
 18,446,744,073,709,551,615
float
Tek duyarlı gerçel sayı için (7 basamak)
4
-3.4e +/- 38
+3.4e +/- 38
double
Çift duyarlı gerçel sayı için (15 basamak)
8
-1.7e +/- 308
+1.7e +/- 308
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Üst