Biến trong C#
Ở các bài trước chúng ta cũng đã có những câu lệnh như int abc = 256
; trong đó thì abc người ta gọi là biến. Vậy biến trong C# là gì? Biến có vai trò như thế nào trong chương trình của chúng ta? Và có hay không mối liên hệ giữa kiểu dữ liệu và biến? Khai báo và sử dụng nó như thế nào ? Chúng ta hãy cùng nhau tìm hiểu trong bài hôm nay nhé !
1. Biến là gì ?
Biến là một tên được cung cấp cho khu vực lưu trữ mà chương trình có thể khai thác. Mỗi biến trong C# đều có một kiểu dữ liệu cụ thể quyết định kích cỡ và cách bố trí bộ nhớ của biến đó. Biến trong lập trình cũng tương tự như biến trong toán học đều có thể thay đổi giá trị. Biến là thành phần cốt lõi của một ngôn ngữ lập trình.
Cấu trúc của bộ nhớ bao gồm các ô nhớ liên tiếp nhau và trong mỗi ô nhớ có một địa chỉ riêng, vì vậy khi sử dung chúng ta phải biết địa chỉ của chúng, điều này gây khó khăn rất nhiều đến việc lập trình chúng ta. Thay vào đó ta có thể sử dụng biến để tham chiếu đến vùng nhớ mà ta đặt chứ ko cần đến địa chỉ ô nhớ nữa.
Vậy nên chúng ta sử dụng biến để thao tác với bộ nhớ một cách dễ dàng cũng như có thể lưu dữ diệu và tái sử dụng lại chúng cho việc lập trình tiện lợi nhất có thể.
Bài viết này được đăng tại [free tuts .net]
2. Khai báo và sử dụng biến
Các biến C# có một kiểu giá trị cụ thể, Các kiểu giá trị cơ bản trong C# được chia ra thành nhiều kiểu khác nhau như: Kiểu số nguyên, kiểu thập phân, kiểu số thực dấu chấm động,.. Ngoài ra C# cũng cho phép định nghĩa các kiểu giá trị khác của biến như kiểu enum hay kiểu class. Tuy nhiên đây là những kiểu dữ liệu phức tạp mà chúng ta sẽ bàn trong những bài học sau.
Cú pháp khai báo biến: <Kiểu dữ liệu> <Tên biến>;
Ở đây kiểu dữ liệu có thể là kiểu dữ liệu có cấu trúc hay các kiểu dữ liệu cơ bản (đã trình bày trong bài kiểu dữ liệu). Tên biến có thể là một biến hoặc một dãy các biến có cùng kiểu dữ liệu và được phân cách nhau bởi dấu phẩy. Tên biến được đặt theo quy tắc đã trình bày trong bài "cấu trúc C# cơ bản".
Biến được khởi tạo với một dấu bằng theo sau với một biểu thức hằng: <Kiểu dữ liệu> <tên biến> = giá_trị;
Chúng ta cần khai báo biến một cách chính xác để tối ưu hóa bộ nhớ. Ví dụ giá trị a là số nguyên và không chứa quá 255 ký tự thì ta nên khai báo a thuộc kiểu byte hơn là khai báo a thuộc kiểu int.
ví dụ về khai báo biến và khởi tạo biến:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace freetuts.net { class freetuts { static void Main(string[] args) { float a, b, c; // khai báo 3 biến a,b,c thuộc kiểu số thực. // gán giá trị cho biến. a = 10; b=10.23f; c=12.31f; int x = 5; // khai báo biến x thuộc kiểu số nguyên và gán giá trị cho biến bằng 5. Console.WriteLine("\nin ra cac bien da khoi tao "); Console.WriteLine("\na = {0} \tb = {1} \tc = {2} \td = {3}", a, b, c, x); Console.WriteLine("\nfreetuts.net chuc ban hoc tot !!!"); Console.ReadKey(); } } }
Ta được kết quả sau khi biên dịch:
Nhận giá trị nhập vào từ người dùng.
Lớp Console cung cấp hàm ReadLine() để người dùng nhập dữ liệu từ bàn phím và có thể lưu nó vào một biến.
Ví dụ như câu lệnh sau sẽ khai báo biến x
và cho phép người dùng nhập vào:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace freetuts.net { class freetuts { static void Main(string[] args) { int x; // khai báo biến x thuộc kiểu số nguyên //gán giá trị cho biến x. Console.WriteLine("\nnhap gia tri cho bien x "); x = Convert.ToInt16(Console.ReadLine()) ; Console.WriteLine("\nin ra cac bien da khoi tao "); Console.WriteLine("\nban da khoi tao gia tri x = {0}",x); Console.WriteLine("\nfreetuts.net chuc ban hoc tot !!!"); Console.ReadKey(); } } }
Thực thi và cho kết quả:
Ở đây chúng ta dùng hàm ép kiểu đó là Convert.ToInt16() để chuyển đổi kiểu dữ liệu người nhập thành kiểu số nguyên int, bởi vì Console.ReadLine() cho phép chúng ta nhập cả dữ liệu chuỗi hoặc ký tự.
Để hiểu hơn bạn hãy xem ví dụ sau:
Khai báo và sử dụng các biến để lưu các giá trị sau và xuất nó ra màn hình console:
- Tên
- Ngày sinh
- Địa chỉ
Các giá trị được nhập từ bàn phím và xuất ra dưới dạng: Bạn tên: <tên>, sinh ngày: <ngày sinh>, trú tại: <địa chỉ>.
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace freetuts.net { class freetuts { static void Main(string[] args) { string name, address; int old; Console.WriteLine("nhap vao ten cua ban"); name = Console.ReadLine(); Console.WriteLine("nhap vao tuoi cua ban"); old = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("nhap vao dia chi cua ban"); address = Console.ReadLine(); Console.WriteLine("======================================"); Console.WriteLine("ten ban la "+name +", "+old +" tuoi, " +"tru tai: "+address); Console.ReadKey(); } } }
Kết quả sau khi thực thi chương trình:
3. Kết luận
Như vậy chúng ta đã đi qua bài biến trong C#, qua bài này hy vọng các bạn đã biết cách khai báo và sử dụng biến và vì sao cần phải khai báo biến trong chương trình. Bài sau mình sẽ hướng dẫn cho các bạn biết được hằng trong C# cách khai báo cũng như sử dụng nó thế nào. Hy vọng các bạn sẽ luôn đồng hành cùng freetuts. Chúc các bạn học tốt !