Latest web development tutorials

C jenis # Data

Dalam C #, variabel dibagi ke dalam jenis berikut:

  • Nilai Type (jenis nilai)
  • tipe referensi (jenis referensi)
  • jenis pointer (jenis pointer)

Nilai Type (jenis nilai)

Jenis nilai variabel dapat diberikan nilai. Mereka berasal dariSystem.ValueType kelas.

jenis nilai langsung berisi data. Sepertiint, char, float, mereka disimpan angka, huruf, angka floating-point.Ketika Anda mendeklarasikan tipeint, sistem mengalokasikan memori untuk menyimpan nilai.

Tabel berikut berisi nilai yang tersedia Type C # 2010:

类型描述范围默认值
bool布尔值True 或 FalseFalse
byte8 位无符号整数0 到 2550
char16 位 Unicode 字符U +0000 到 U +ffff'\0'
decimal128 位精确的十进制值,28-29 有效位数(-7.9 x 10 28 到 7.9 x 10 28 ) / 10 0 到 28 0.0M
double64 位双精度浮点型(+/-)5.0 x 10 -324 到 (+/-)1.7 x 10 308 0.0D
float32 位单精度浮点型-3.4 x 10 38 到 + 3.4 x 10 38 0.0F
int32 位有符号整数类型-2,147,483,648 到 2,147,483,6470
long64 位有符号整数类型-923,372,036,854,775,808 到 9,223,372,036,854,775,807 0L
sbyte8 位有符号整数类型-128 到 1270
short16 位有符号整数类型-32,768 到 32,7670
uint32 位无符号整数类型0 到 4,294,967,2950
ulong64 位无符号整数类型0 到 18,446,744,073,709,551,6150
ushort16 位无符号整数类型0 到 65,5350

Untuk mendapatkan jenis yang tepat atau ukuran variabel pada platform tertentu, Anda dapat menggunakan metodesizeof.Ekspresisizeof (tipe)menghasilkan ukuran penyimpanan dalam byte dari objek penyimpanan atau jenis. Berikut ini adalah contoh untuk mendapatkan jenis penyimpanan pada Ukuran mesinint:

namespace DataTypeApplication
{
   Program kelas
   {
      static void Main (string [] args)
      {
         Console.WriteLine ( "Ukuran int: {0}", sizeof (int));
         Console.ReadLine ();
      }
   }
}

Ketika kode di atas dikompilasi dan dijalankan, menghasilkan hasil sebagai berikut:

Ukuran int: 4

tipe referensi (jenis referensi)

Jenis referensi tidak berisi data aktual yang disimpan dalam variabel, tetapi mereka berisi referensi ke variabel.

Dengan kata lain, mereka merujuk ke lokasi memori. Bila menggunakan beberapa variabel, tipe referensi dapat menunjuk ke lokasi memori. Jika lokasi memori data ditentukan oleh perubahan variabel, variabel lain secara otomatis akan mencerminkan perubahan dalam nilai-nilai.Built-in jenis referensi:objek, dinamis dantali.

Objek (objek) Jenis

Objek (objek) jenis adalah sistem C # jenis generik (Jenis Sistem Umum - CTS) di kelas dasar utama untuk semua jenis data.Objek adalah alias untuk kelas System.Object. Jadi obyek (Object) jenis dapat ditugaskan untuk jenis lain (jenis nilai, referensi jenis, jenis yang telah ditentukan atau jenis yang ditetapkan pengguna) nilai-nilai. Namun, sebelum Anda menetapkan nilai, Anda perlu mengetik konversi.

Ketika jenis nilai keberatan Jenis disebuttinju, di sisi lain, ketika jenis objek untuk jenis nilai, hal itu disebut unboxing.

objek obj;
obj = 100; // ini adalah tinju 

Dinamis (Dynamic) Type

Anda dapat menyimpan jenis nilai dalam tipe data dinamis variabel. variabel ini memeriksa jenis terjadi pada waktu berjalan.

Dinamis sintaks deklarasi tipe:

dinamis nilai <variable_name> =;

Sebagai contoh:

dinamis d = 20;

tipe dinamis serupa jenis objek, tetapi jenis variabel jenis pemeriksaan objek terjadi pada waktu kompilasi, memeriksa jenis dinamis dan jenis variabel terjadi pada saat runtime.

String (String) Jenis

String (String) jenis memungkinkan Anda untukmenetapkan setiap nilai string ke variabel. String (String) jenis adalah alias untuk kelas System.String. Ini adalah dari objek (Object) ketik berasal. Nilai String (String) Jenis dapat didistribusikan dalam dua bentuk: @ kutipan dan kutipan.

Sebagai contoh:

String str = "w3cschool.cc";

@ String dikutip:

@ "W3cschool.cc";

C # String di depan string dapat ditambahkan @ (disebut sebagai "string verbatim") akan melarikan diri karakter (\) diperlakukan sebagai karakter biasa, seperti:

string str = @"C:\Windows";

Adalah setara dengan:

string str = "C:\\Windows";

@ String dapat digunakan dalam setiap baris, baris dan ruang lekukan dihitung dalam panjang string.

string str = @"<script type=""text/javascript"">
    <!--
    -->
    </script>";

referensi jenis pengguna-didefinisikan: class, interface atau delegasi. Kami akan membahas jenis ini di bab-bab selanjutnya.

jenis pointer (jenis pointer)

variabel jenis pointer untuk menyimpan jenis lain dari alamat memori. C # dan pointer di C atau C ++ pointer memiliki fungsi yang sama.

Pointer sintaks deklarasi tipe:

ketik * identifier;

Sebagai contoh:

char * cptr;
int * iptr;

Kami akan membahas jenis pointer di bagian "tidak aman Code".