Header Ads

Kiểu dữ liệu trong C#

Trong C#, biến được xếp thành những kiểu sau:
  • Kiểu giá trị
  • Kiểu tham chiếu
  • Kiểu con trỏ (Pointer)

Kiểu giá trị


Kiểu Phạm vi
bool True hoặc False
byte 0 đến 255
Char U +0000 đến U +ffff
demcimal (-7.9 x 1028 đến 7.9 x 1028)/100 đến 28
double (+/-)5.0 x 10-324 đến (+/-)1.7 x 10308
float -3.4 x 1038 đến +3.4 x 1038
int -2,147,483,648 đến 2,147,483,647
long -923,372,036,854,775,808 đến 9,223,372,036,854,775,807
sbyte -128 đến 127
short -32,768 đến 32,767
unint 0 đến 4,294,967,295
ulong 0 đến 18,446,744,073,709,551,615
ushort 0 đến 65,535


Kiểu tham chiếu

Kiểu dữ liệu tham chiếu không chứa dữ liệu thực tế lưu trữ trong một biến, nhưng chứa tham chiếu đến các biến.
Nói cách khác, nó chỉ đến một vị trí bộ nhớ. Nếu dữ liệu trong vị trí bộ nhớ thay đổi bỏi một trong các biến, các biến khác sẽ tự động cập nhật lại sự thay đổi giá trị này. Những kiểu dữ liệu tham biến sẵn có: object (Đối tượng), dynamic (Động) và string (chuỗi xâu).

Kiểu object

Kiểu object là kiểu dữ liệu cơ sở cho tất cả các loại dữ liệu trong C# thuộc Hệ thống kiểu chung (CTS - Common Type System). object là tên gọi khác của lớp System.Object. Vì thế, kiểu object có thể nhận bất kỳ giá trị nào thuộc các kiểu dữ liệu trong C#. Trước khi gán giá trị cho nó thì nó sẽ tự chuyển đổi kiểu dữ liệu của giá trị.

Khi một giá trị được chuyển sang kiểu object thì nó được gọi là "boxing". Ngược lại, khi kiểu object được chuyển qua kiểu giá trị nào đó, được gọi là "unboxing".

Ví dụ

object obj;
obj = 69; // Đây là boxing

Kiểu dynamic

Bạn có thể lưu trữ bất kỳ kiểu giá trị nào trong biến có kiểu dữ liệu dynamic.
Cú pháp khai báo:
dynamic <tên_biến> = giá trị;

Ví dụ

dynamic d = 2015;


Kiểu dynamic tương tự như kiểu object. Tuy nhiên, việc kiểm tra biến object diễn ra trong thời gian biên dịch, còn kiểu dynamic thì diễn ra trong thời gian chạy chương trình.
Kiểu string
Kiểu string cho phép bạn gán bất kỳ giá trị chuỗi xâu bất kỳ vào trong biến. Kiểu string là tên gọi khác của lớp System.String.
Giá trị để gán cho chuỗi, có hai dạng: giá trị@giá trị.

Ví dụ

// Gán theo kiểu giá trị:
string str = "Tin Hoc Soc Trang";

// Gán theo dạng @giá trị:
@"Tin Hoc Soc Trang";


Kiểu tham chiếu mà người dùng định nghĩa là: class, interface hoặc delegate.
Chúng tôi sẽ đề cập ở các bài viết sau.

Kiểu con trỏ

Biến kiểu con trỏ lưu trữ địa chỉ bộ nhớ của các kiểu khác. Con trỏ trong C# tương tự như trong C/C++.

Cú pháp để khai báo kiểu con trỏ có dạng:
<kiểu_dữ_liệu>* <tên_biến>;

Ví dụ

char* c;
int* i;



Không có nhận xét nào

Được tạo bởi Blogger.