C#

C# Veri Tipleri

C # ‘daki değişkenler aşağıdaki tiplere ayrılır –

  • Değer Tipleri
  • Referans Tipleri
  • İşaretçi İşaretçi

C# Değer Tipleri

 

Değer türü değişkenlerine doğrudan bir değer atanabilir. “System.ValueType” sınıfından türetilirler.

Değer türleri doğrudan veri içerir. Bazı örnekler sırasıyla, sayıları, harfler ve ondalılıklı  sayılarını depolayan int, char ve float’tır. Bir “int” tipi bildirdiğinizde, sistem veriyi depolamak için bellekten yer ayırır.

Aşağıdaki tablo C#’da kullanılabilir değer türlerini listeler.

TipBoyutAralıkVarsayılan Değer
boolBoolean DeğerTrue yada FalseFalse
byte8-bit işaretsiz integer0 – 2550
char16-bit Unicode karakterU +0000 – U +ffff‘\0’
decimal128-bit ondalıklı değer 28-29 basamak(-7.9 x 1028 – 7.9 x 1028) / 100to 280.0M
double64-bit çift ondalıklı değer(+/-)5.0 x 10-324 – (+/-)1.7 x 103080.0D
float32-bit ondalıklı değer-3.4 x 1038 – + 3.4 x 10380.0F
int32-bit işaretli integer tip-2,147,483,648 – 2,147,483,6470
long64-bit işaretli integer tip-9,223,372,036,854,775,808 – 9,223,372,036,854,775,8070L
sbyte8-bit işaretli integer tip-128 – 1270
short16-bit işaretli integer tip-32,768 – 32,7670
uint32-bit işaretsiz integer tip0 – 4,294,967,2950
ulong64-bit işaretsiz integer tip0 – 18,446,744,073,709,551,6150
ushort16-bit işaretsiz integer tip0 – 65,5350

Belirli bir platformdaki bir türün veya bir değişkenin tam boyutunu elde etmek için sizeof yöntemini kullanabilirsiniz. “Sizeof (type)” ifadesi, nesnenin depolama boyutunu veya tür bayt cinsinden verir.

Aşağıda, herhangi bir makinede int türünün boyutunu almak için bir örnek verilmiştir:

C# Referans Tipleri

Referans türleri bir değişkende saklanan gerçek verileri içermez, ancak değişkenlere bir referans içerirler.

Başka bir deyişle, bir bellek konumuna başvururlar. Birden çok değişken kullanarak, referans türleri bir bellek konumuna başvurabilir. Hafızadaki veriler değişkenlerden biri tarafından değiştirilirse, diğer değişken otomatik olarak bu değişikliği değer olarak yansıtır.

Yerleşik referans türleri örneği: “object“, “dynamic” ve “string

C# object Tipi

“Object” türü, C# Ortak Tip Sistemindeki (CTS) tüm veri türleri için en iyi temel sınıftır. Object, System.Object sınıfı için bir takma addır. Nesne tiplerine başka türlerin, değer tiplerinin, referans türlerinin, önceden tanımlanmış veya kullanıcı tanımlı tiplerin değerleri atanabilir. Bununla birlikte, değerleri atamadan önce, tür dönüşümü gerektirir.

Bir değer türü, nesne türüne dönüştürüldüğünde “boxing” olarak adlandırılır ve diğer yandan, bir nesne türü bir değer türüne dönüştürüldüğünde “unboxing” olarak adlandırılır.

 

C# dynamic Tipi

Dinamik veri türü değişkeninde her türlü değeri saklayabilirsiniz. Bu değişken türlerini kontrol etme çalışma zamanında gerçekleşir.

Dinamik bir tür bildirmek için sözdizim:

Örnek:

Dinamik tipler, nesne tipi değişkenlerini kontrol etme türü derleme zamanında gerçekleşmesi dışında, dinamik tip değişkenlerin çalışma zamanında gerçekleşmesi dışında, nesne tiplerine benzerdir.

C# string Tipi

stirng tipi, bir değişkene herhangi bir string değeri atamanıza izin verir. string türü, System.String sınıfı için bir takma addır. Nesne tipinden türetilmiştir. Bir dize türü için değer, iki durumda dize değişmezleri kullanılarak atanabilir: tırnak işareti ve @tırnak işareti

Örnek:

Kullanıcı tanımlı referans türleri şunlardır: class, interface ve delegate. Bu türleri daha sonra açıklayacağız.

C# Pointer Tipi (C# İşaretçi Tipi)

İşaretçi tipi değişkenleri başka bir türün hafıza adresini saklar. C# işaretçileri, C veya C ++ ‘daki işaretçilerle aynı özelliklere sahiptir.

İşaretçi türü bildirmek için sözdizimi:

Örnek:

Not: Pointer kullanımı güvenli olmadığı için proje ayarlarından unsafe modu aktifleştirmek gerekmektedir. Solution Exploerda proje üzerinde sağ tıklayıp properties bağlantısına tıklayın. Açılan panelden build sekmesinde unsafe modu aktifleştirin.

İşaretleyici türlerini ‘Güvensiz Kodlar’ bölümünde daha detaylı tartışacağız.

About the author

admin

Add Comment

Click here to post a comment

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.