Biến trong C là gì | Laptrinhcanban.com

Biến trong C là gì

Lý giải khái niệm biến trong C. Bạn sẽ biết biến trong C là gì, cách đặt tên cho biến trong C cũng như cách sử dụng biến trong C sau bài học này.

Tìm hiểu biến trong C

Trước khi đến khái niệm biến trong C là gì, chúng ta sẽ cùng tìm hiểu một ví dụ sau đây.

Chúng ta có chương trình in ra màn hình dòng chữ "Good morining" như sau:

printf("%s\n", "Good morining");
printf("%s\n", "Good morining");
printf("%s\n", "Good morining");
printf("%s\n", "Good morining");
printf("%s\n", "Good morining");

Chương trình trên thực tế không có lỗi gì cả, và nó sẽ in ra màn hình các dòng chữ cần thiết khi chạy. Giả sử bây giờ chúng ta muốn thay thế dòng "Good morining" thành dòng chữ "Good evening", khi đó chúng ta phải viết lại toàn bộ chương trình đó như sau:

printf("%s\n", "Good evening");
printf("%s\n", "Good evening");
printf("%s\n", "Good evening");
printf("%s\n", "Good evening");
printf("%s\n", "Good evening");

Ở ví dụ này, chúng ta chỉ có 5 dòng trong mã nguồn chương trình C, do đó việc sửa lại chúng cũng rất là đơn giản. Tuy nhiên nếu như trong các chương trình C phức tạp hơn, việc sửa lại từng dòng từng dòng đó sẽ mất rất nhiều công sức, lại rất dễ bỏ quên nơi cần sửa, và có thể là cả việc viết sai chữ cần sửa nữa.

Giống như trên, nếu chúng ta có một chỗ nào đó trong máy tính với địa chỉ cụ thể để chứa dòng chữ "Good morining", sau đó mỗi lần cần dùng dòng chữ này, chúng ta sẽ truy cập đến địa chỉ này để lấy dòng chữ ra và dùng thì sẽ tiện lợi biết bao. Và càng tuyệt hơn khi lúc nào muốn thay đổi dòng chữ, chúng ta chỉ cần thay đổi nội dung ở địa chỉ đó, thay vì phải thay đổi từng dòng một trong chương trình.

Và, cái địa chỉ cụ thể trong máy tính chứa dữ liệu như trên được gọi là biến trong C. Bằng cách dùng biến trong C, thay vì viết cũng như sửa lại từng dòng chữ như trên, chúng ta chỉ cần dùng một biến để đại diện cho dòng chữ và sử dụng chúng nhiều lần trong chương trình, cũng như thay đổi nội dung dòng chữ khi cần thiết như sau đây:

>>>tạo biến a để chứa dòng "Good morning"

>>>Sử dụng biến a trong chương trình thay cho dòng chữ "Good moring"

>>thay đổi biến a thành "Good evening" để thay thế toàn bộ giá trị trong chương trình

Biến trong C là gì

Có hai trường phái định nghĩa biến trong lập trình nói chung và biến trong C nói riêng như sau:

Trường phái đầu tiên giống như ví dụ trên, coi biến trong C giống như thẻ ghi địa chỉ của dữ liệu. Các dữ liệu được lưu giữ tại các vị trí riêng biệt trong bộ nhớ với địa chỉ khác nhau, và biến trong C là thẻ dùng để ghi địa chỉ của dữ liệu đó trong bộ nhớ. Khi sử dụng dữ liệu, chúng ta sẽ truy cập vào địa chỉ được ghi trên biến của dữ liệu đó.
Biến trong C

Trường phái thứ hai coi biến trong C giống như một cái hộp để lưu trữ dữ liệu khi xử lý chương trình. Các dữ liệu này có thể là số hoặc chuỗi mà bạn có thể ưu trữ vào biến và sử dụng nhiều lần. Kết quả của các phép xử lý như tính toán giá trị số, chỉnh sửa chuỗi ký tự sẽ tạm thời được giữ vào biến và dùng để sử dụng cho chương trình sau này.
Biến trong C

Bạn cũng không cần quá chú ý trường phái nào đúng, chỉ cần ghi nhớ khái niệm biến trong C bằng một trong hai cách trên là được.

Đặt tên cho biến trong C

Để đặt tên cho biến trong C, chúng ta cần tuân theo Quy tắc đặt tên biến trong C như dưới đây:

  1. Các ký tự có thể được sử dụng để đặt tên cho biến trong C là a đến z, A đến Z, 0 đến 9, dấu gạch dưới _, chữ tiếng việt có dấu, hán tự tiếng Trung tiếng Nhật v.v..
  2. Không thể sử dụng các giá trị số (0 đến 9) cho ký tự đầu tiên.
  3. Có thể sử dụng gạch dưới cho ký tự đầu tiên. Tuy nhiên vì gạch dưới thường được sử dụng trong các trường hợp đặc biệt, nên tốt hơn là không sử dụng nó.
  4. Phân biệt chữ hoa chữ thường khi đặt tên cho biến trong C
  5. Không thể sử dụng các từ khóa của C.

Chúng ta sẽ cùng tìm hiểu chi tiết về các Quy tắc đặt tên biến trong C ở bảng trên như sau.

Dùng ký tự alphabet, chữ số, gạch dưới để đặt tên biến trong C

Chúng ta sử dụng các ký tự alphabet, chữ số và gạch dưới để đặt tên biến trong C. Mặc dù chúng ta cũng có thể dùng chữ hán tự và tiếng Việt có dấu để đặt tên cho biến trong C, tuy nhiên Kiyoshi không khuyến khích bạn dùng cách này.

char name[] = "Kiyoshi";
int old =30;

char tên[] = "Kiyoshi";
int tuổi =30;

char 名前 = "Kiyoshi";
int 年齢 = 30;

Không dùng các giá trị số cho ký tự đầu tiên của biến

Chúng ta không thể sử dụng các giá trị số cho ký tự đầu tiên của biến trong C, bởi vì lỗi Compile erorr sẽ xuất hiện.

int 7up =30;

Lỗi Compile erorr:

Main.c:3:5: error: expected identifier or '('
int 7up =30;

Phân biệt chữ hoa chữ thường khi đặt tên biến trong C

Phân biệt chữ hoa chữ thường khi Đặt tên cho biến trong C. Ví dụ hai biến numNum trong ví dụ dưới đây là khác nhau và cho ra kết quả cũng khác nhau:

int num = 100;
int Num = 200;
printf("%d\n%d", num,Num);

//> 100
//> 200

Không dùng các từ khóa của C để đặt tên biến trong C

Chúng ta Không thể sử dụng các từ khóa của C để đặt tên biến trong C. Các từ khóa (keyword) là các từ chỉ dành riêng cho C và bạn không thể dùng chúng để đặt tên biến được.

Nếu bạn dùng các từ khóa trong C ở bảng trên để đặt tên biến trong C thì lỗi Compile erorr sẽ trả về như ví dụ sau:

int double = 10;

Lỗi Compile erorr:

Main.c:3:5: error: cannot combine with previous 'int' declaration specifier
int double = 10;

Sử dụng biến trong C

Ví dụ dưới đây, chúng ta viết một chương trình tính giá (bao gồm cả thuế VAT 10%) của các loại hoa quả và in ra màn hình.

#include <stdio.h>

int main(void){
printf("Giá cam %5.2f\n", 120 * 1.1);
printf("Giá táo %5.2f\n", 99 * 1.1);
printf("Giá chuối %5.2f\n" , 100 * 1.1);

return 0;
}

Nếu như lần nào chúng ta cũng khai thuế VAT như trên thì có thể bị nhầm lẫn do bất cẩn, hoặc trong trường hợp thuế VAT được nhà nước điều chỉnh thì chúng ta phải sửa lại toàn bộ. Như vậy rất là dễ nhầm và mất công nữa.

Thay vì đó, chúng ta sẽ sử dụng biến trong C bằng cách tạo ra một biến tax, sau đó lưu trữ giá trị cả thuế VAT 1.1 vào. Khi sử dụng, chúng ta chỉ cần gọi tên biến tax ra như dưới đây:

#include <stdio.h>

int main(void){
float vat = 1.1;
printf("Giá cam %5.2f\n", 120 * vat);
printf("Giá táo %5.2f\n", 99 * vat);
printf("Giá chuối %5.2f\n" , 100 * vat);

return 0;
}

Cả hai cách viết ở trên đều đưa ra kết quả giống nhau:

Giá cam 132.00
Giá táo 108.90
Giá chuối 110.00

Giả sử nhà nước đã nâng mức thuế VAT lên thành 1.5 lần, khi đó đơn giản chỉ cần thay đổi giá trị của tax thành 1.5 mà thôi:

#include <stdio.h>

int main(void){
float vat = 1.5;
printf("Giá cam %5.2f\n", 120 * vat);
printf("Giá táo %5.2f\n", 99 * vat);
printf("Giá chuối %5.2f\n" , 100 * vat);

return 0;
}
//>Giá cam 180.00
//>Giá táo 148.50
//>Giá chuối 150.00

Từ ví dụ trên, bạn có thể thấy việc sử dụng biến trong C sẽ giúp chúng ta giảm thiểu lỗi sai so với việc nhập trực tiếp giá trị, cũng như giúp thay đổi giá trị của dữ liệu trong chương trình nhanh chóng và hiệu quả hơn.

Tổng kết

Trên đây Kiyoshi đã giải thích khái niệm biến trong C là gì, cách đặt tên cho biến trong C cũng như cách sử dụng biến trong C rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về C trong các bài học tiếp theo.

HOME>> >>

Profile
きよしです!笑

Tác giả : Kiyoshi (Chis Thanh)

Kiyoshi là một cựu du học sinh tại Nhật Bản. Sau khi tốt nghiệp đại học Toyama năm 2017, Kiyoshi hiện đang làm BrSE tại Tokyo, Nhật Bản.