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 或 False | False |
byte | 8 位无符号整数 | 0 到 255 | 0 |
char | 16 位 Unicode 字符 | U +0000 到 U +ffff | '\0' |
decimal | 128 位精确的十进制值,28-29 有效位数 | (-7.9 x 10 28 到 7.9 x 10 28 ) / 10 0 到 28 | 0.0M |
double | 64 位双精度浮点型 | (+/-)5.0 x 10 -324 到 (+/-)1.7 x 10 308 | 0.0D |
float | 32 位单精度浮点型 | -3.4 x 10 38 到 + 3.4 x 10 38 | 0.0F |
int | 32 位有符号整数类型 | -2,147,483,648 到 2,147,483,647 | 0 |
long | 64 位有符号整数类型 | -923,372,036,854,775,808 到 9,223,372,036,854,775,807 | 0L |
sbyte | 8 位有符号整数类型 | -128 到 127 | 0 |
short | 16 位有符号整数类型 | -32,768 到 32,767 | 0 |
uint | 32 位无符号整数类型 | 0 到 4,294,967,295 | 0 |
ulong | 64 位无符号整数类型 | 0 到 18,446,744,073,709,551,615 | 0 |
ushort | 16 位无符号整数类型 | 0 到 65,535 | 0 |
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".