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

HOME › >>

Biến trong C là gì

Ngôn ngữ lập trình C là một trong những ngôn ngữ lập trình phổ biến và mạnh mẽ, được sử dụng rộng rãi trong việc phát triển các ứng dụng và hệ thống phần cứng. Trong C, biến là một khái niệm quan trọng và cơ bản, đóng vai trò quan trọng trong việc lưu trữ và xử lý dữ liệu. Bài viết này sẽ khám phá chi tiết về biến trong ngôn ngữ lập trình C, từ cách khai báo, sử dụng, và quản lý biến đến một số loại biến phổ biến và quy tắc về biến trong C.

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

Khái niệm cơ bản về biến

Biến là một vùng lưu trữ trong bộ nhớ máy tính được dùng để lưu trữ dữ liệu. Trong C, biến có thể lưu trữ nhiều loại dữ liệu khác nhau như số nguyên, số thực, ký tự và nhiều loại dữ liệu tùy chỉnh khác. Để sử dụng một biến trong C, bạn cần khai báo biến trước.

Một cách đơn giản thì bạn có thể 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

Khai báo biến

Để khai báo một biến trong C, bạn cần sử dụng cú pháp sau:

kiểu_dữ_liệu tên_biến;

Trong đó:

  • kiểu_dữ_liệu là loại dữ liệu mà biến sẽ lưu trữ, ví dụ: int, float, char, double,…
  • tên_biến là tên bạn muốn đặt cho biến đó.

Ví dụ:

int so_nguyen;
float so_thuc;
char ki_tu;

Khi bạn đã khai báo một biến, máy tính sẽ cấp phát một phần của bộ nhớ để lưu trữ giá trị của biến đó.

Gán giá trị cho biến

Để gán giá trị cho một biến, bạn sử dụng toán tử gán =. Ví dụ:

so_nguyen = 10;
so_thuc = 3.14;
ki_tu = 'A';

Sau khi gán giá trị, biến so_nguyen chứa giá trị 10, so_thuc chứa giá trị 3.14, và ki_tu chứa ký tự ‘A’.

Sử dụng biến trong các phép toán

Biến trong C có thể sử dụng trong các phép toán. Ví dụ:

int a = 5;
int b = 10;
int tong = a + b; // Biến "tong" chứa giá trị 15

Trong ví dụ này, biến tong được sử dụng để lưu kết quả của phép cộng giữa ab.

Quy tắc đặt tên 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;

Loại biến trong C

Có nhiều loại biến khác nhau trong ngôn ngữ lập trình C. Dưới đây là một số loại biến phổ biến:

  1. int: Dùng để lưu trữ số nguyên.
int age = 30;
  1. float: Dùng để lưu trữ số thực (số có phần thập phân).
float weight = 68.5;
  1. char: Dùng để lưu trữ một ký tự.
char grade = 'A';
  1. double: Tương tự như float, nhưng có độ chính xác cao hơn.
double pi = 3.14159265359;
  1. bool: Dùng để lưu trữ giá trị true hoặc false (1 hoặc 0).
bool is_valid = true;
  1. Array: Một tập hợp các biến có cùng kiểu dữ liệu.
int numbers[5] = {1, 2, 3, 4, 5};
  1. Pointer: Biến chứa địa chỉ của một biến khác.
int x = 10;
int *ptr = &x; // ptr chứa địa chỉ của x

Phạm vi của biến

Biến trong C có phạm vi (scope) xác định nơi mà biến đó có thể được truy cập và sử dụng. Có hai loại phạm vi chính trong C:

  1. Biến cục bộ (local variables): Có phạm vi chỉ trong khối lệnh (block) mà biến được khai báo.
void function() {
int x = 10; // x là biến cục bộ trong hàm function
}
  1. Biến toàn cục (global variables): Có phạm vi trong toàn

    bộ chương trình.

int global_variable = 20; // global_variable là biến toàn cục

Sự hiểu biết về phạm vi của biến quan trọng để tránh xung đột tên biến và để quản lý tài nguyên bộ nhớ một cách hiệu quả.

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

Biến là một phần quan trọng trong ngôn ngữ lập trình C, cho phép lưu trữ và xử lý dữ liệu. Việc hiểu cách khai báo, sử dụng và quản lý biến là quan trọng đối với mọi người lập trình C. Ngoài ra, việc đặt tên biến và quản lý phạm vi của biến cũng đóng vai trò quan trọng trong việc phát triển ứng dụng C hiệu quả và dễ bảo trì.

URL Link

https://laptrinhcanban.com/c/lap-trinh-c-co-ban/bien-trong-c/bien-trong-c-la-gi/

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

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.