Cho đến nay, trong loạt bài hướng dẫn lập trình C này, chúng ta đã thảo luận về những điều cơ bản như hàm, mảng, biến, v.v. Tiếp tục theo dòng chảy, trong hướng dẫn này, chúng ta sẽ thảo luận về một khái niệm cơ bản khác như vậy: toán tử.
Là người mới bắt đầu học ngôn ngữ lập trình C, bạn sẽ chủ yếu xử lý ba loại toán tử: số học, quan hệ và logic. Hãy bắt đầu với các toán tử airthmetic.
Về cơ bản, có 5 loại toán tử số học trong C: +, -, *, / và %. Trong khi +, - và / là tự giải thích, * đề cập đến phép nhân và % là toán tử môđun. Trong trường hợp bạn không biết, toán tử % cung cấp cho bạn phần dư. Ví dụ:
Ở đây, toán tử % đảm bảo bạn nhận được giá trị phần dư khi 'a' được chia cho 'b'. Điều này có nghĩa là phần dư có thể bằng không trong trường hợp 'a' chia hết cho 'b'. Sau đây là một ví dụ nhỏ giúp bạn hiểu rõ hơn về các toán tử này:
Sau đây là kết quả của chương trình này:
Cần đề cập ở đây là khi xử lý float và double, bạn không nên sử dụng toán tử %. Ngoài ra, các toán tử + và - mà chúng ta đã sử dụng ở đây là toán tử nhị phân, nghĩa là chúng yêu cầu hai toán hạng (ví dụ: 'a' và 'b' trong trường hợp của chúng ta). Ngoài ra còn có các toán tử đơn + và -, hoạt động trên một toán hạng duy nhất.
Sau đây là một ví dụ về toán tử đơn - đang hoạt động:
Sau đây là đầu ra:
Trong số tất cả các toán tử đã thảo luận cho đến nay, theo thứ tự ưu tiên, đơn + và - chia sẻ vị trí đầu tiên, tiếp theo là *, / và %, theo sau là nhị phân + và -.
Xin lưu ý rằng cũng có một số toán tử đơn khác, một số trong số đó chúng tôi đã thảo luận gián tiếp trong các hướng dẫn trước đây của mình. Sau đây là danh sách: ++, --, !, & và sizeof.
Chúng ta đã thảo luận về toán tử tăng và giảm ++ và -- (ở cả dạng tiền tố và hậu tố). ! KHÔNG phải là toán tử phủ định bất kỳ thứ gì mà nó được áp dụng. Ví dụ, nếu kết quả của một điều kiện là đúng, áp dụng ! sẽ chuyển đổi nó thành sai và ngược lại.
Tiếp theo, & được sử dụng để lấy địa chỉ của một biến (như đã thấy trong trường hợp đối số hàm scanf()), trong khi toán tử sizeof cung cấp cho bạn kích thước của toán hạng được truyền vào nó. Đoạn mã sau đây sẽ giúp bạn hiểu rõ hơn về các toán tử này:
Và đây là kết quả:
Tiếp theo, chúng ta hãy nhanh chóng xem xét các toán tử quan hệ và logic. Sau đây là các toán tử quan hệ:
Là người mới bắt đầu học ngôn ngữ lập trình C, bạn sẽ chủ yếu xử lý ba loại toán tử: số học, quan hệ và logic. Hãy bắt đầu với các toán tử airthmetic.
Về cơ bản, có 5 loại toán tử số học trong C: +, -, *, / và %. Trong khi +, - và / là tự giải thích, * đề cập đến phép nhân và % là toán tử môđun. Trong trường hợp bạn không biết, toán tử % cung cấp cho bạn phần dư. Ví dụ:
Mã:
a % b
Mã:
#include
int main()
{
int a = 10, b = 3, c =0;
c = a + b;
printf("%d\n", c);
c = a - b;
printf("%d\n", c);
c = a*b;
printf("%d\n", c);
c = a/b;
printf("%d\n", c);
c = a%b;
printf("%d\n", c);
c = a%b;
printf("%d\n", c);
return 0;
}
Mã:
13
7
30
3
1
Sau đây là một ví dụ về toán tử đơn - đang hoạt động:
Mã:
#include
int main()
{
int a = 10, b = 3, c =0;
c = -a;
printf("c = %d", c);
}
Mã:
c = -10
Xin lưu ý rằng cũng có một số toán tử đơn khác, một số trong số đó chúng tôi đã thảo luận gián tiếp trong các hướng dẫn trước đây của mình. Sau đây là danh sách: ++, --, !, & và sizeof.
Chúng ta đã thảo luận về toán tử tăng và giảm ++ và -- (ở cả dạng tiền tố và hậu tố). ! KHÔNG phải là toán tử phủ định bất kỳ thứ gì mà nó được áp dụng. Ví dụ, nếu kết quả của một điều kiện là đúng, áp dụng ! sẽ chuyển đổi nó thành sai và ngược lại.
Tiếp theo, & được sử dụng để lấy địa chỉ của một biến (như đã thấy trong trường hợp đối số hàm scanf()), trong khi toán tử sizeof cung cấp cho bạn kích thước của toán hạng được truyền vào nó. Đoạn mã sau đây sẽ giúp bạn hiểu rõ hơn về các toán tử này:
Mã:
#include
int main()
{
int a = 10, b = 3, c =0, d =1, e=0, f=9;
printf("a = 10 và a++ = %d\n", a++);
printf("b = 3 và ++b = %d\n", ++b);
printf("c = 0 và c-- = %d\n", c--);
printf("d = 1 và --d = %d\n", --d);
if(!e)
{
printf("\n e bằng không hoặc SAI và địa chỉ của nó là: %u\n", &e);
printf("\n sizeof 'f' là: %u\n", sizeof(f));
}
return 0;
}
Mã:
a = 10 và a++ = 10
b = 3 và ++b = 4
c = 0 và c-- = 0
d = 1 và --d = 0
e bằng 0 hoặc SAI và địa chỉ của nó là: 856178696
sizeof 'f' là: 4
Mã:
> >= < b
a >= b
a < b
a