2.6 ตัวดำเนินการ (operators)
ตัวดำเนินการบางครั้งเรียกว่า “เครื่องหมาย” จะเข้าใจง่ายกว่า ในภาษา C สามารถแบ่งตัวดำเนินการได้หลายประเภทดังนี้
ตัวดำเนินการบางครั้งเรียกว่า “เครื่องหมาย” จะเข้าใจง่ายกว่า ในภาษา C สามารถแบ่งตัวดำเนินการได้หลายประเภทดังนี้
2.6.1 ตัวดำเนินการคณิตศาสตร์ (mathematical operators)
ตารางที่ 2.2 แสดงตัวดำเนินการคณิตศาสตร์
สัญลักษณ์ (symbol) | ตัวดำเนินการ (operators) | ตัวอย่าง |
+ | บวก (addition) | a+b |
- | ลบ (subtraction) | a-b |
* | คูณ (multiplication) | a*b |
/ | หาร (division) | a/b |
% | หารเอาเศษ (remainder) | a%b |
ที่มา : Aitken, P. and B. Jones, 1994 : 61.
ผลลัพธ์ที่ได้จากการคำนวณทางคณิตศาสตร์จะอยู่ในรูปของตัวเลข
2.6.2 ตัวดำเนินการความสัมพันธ์ (relational operators)
ตารางที่ 2.3 แสดงตัวดำเนินการความสัมพันธ์
สัญลักษณ์ (symbol) | ตัวดำเนินการ (operators) | ตัวอย่าง |
< | น้อยกว่า (less than) | A<b |
> | มากกว่า (greater than) | a>b |
<= | น้อยกว่าหรือเท่ากับ (less than or equal) | A<=b |
>= | มากกว่าหรือเท่ากับ (greater than or equal) | a>=b |
== | เท่ากับ (equal) | A==b |
!= | ไม่เท่ากับ (not equal) | a!=b |
ที่มา : Aitken, P. and B. Jones, 1994 : 66.
ผลลัพธ์ที่ได้จากตัวดำเนินการความสัมพันธ์ จะได้ค่าจริง (1) หรือค่าเท็จ (0) เท่านั้น
ผลลัพธ์ที่ได้จากตัวดำเนินการความสัมพันธ์ จะได้ค่าจริง (1) หรือค่าเท็จ (0) เท่านั้น
2.6.3 ตัวดำเนินการเชิงตรรกะ (logical operators)
ตารางที่ 2.4 แสดงตัวดำเนินการเชิงตรรกะ
สัญลักษณ์ (symbol) | ตัวดำเนินการ (operators) | ตัวอย่าง |
&& | และ (AND) | A<b && c>d |
|| | หรือ (OR) | a<b || c>d |
! | ไม่ (NOT) | !(a<b) |
ที่มา : Aitken, P. and B. Jones, 1994 : 75.
ผลลัพธ์ที่ได้จากตัวดำเนินการเชิงตรรกะ จะได้ค่าจริง (1) หรือค่าเท็จ (0) เท่านั้น
ผลลัพธ์ที่ได้จากตัวดำเนินการเชิงตรรกะ จะได้ค่าจริง (1) หรือค่าเท็จ (0) เท่านั้น
2.6.4 ตัวดำเนินการเพิ่มค่าและลดค่า (increment and decrement operators)
ตารางที่ 2.5 แสดงตัวดำเนินการเพิ่มค่าและลดค่า
สัญลักษณ์ (symbol) | ตัวดำเนินการ (operators) | ตัวอย่าง |
++ | เพิ่มค่า (increment) | a++ หรือ ++a |
-- | ลดค่า (decrement) | a-- หรือ --a |
ที่มา : Aitken, P. and B. Jones, 1994 : 58.
ผลลัพธ์ที่ได้จากการเพิ่มค่าและลดค่าจะอยู่ในรูปของค่าตัวเลข
ผลลัพธ์ที่ได้จากการเพิ่มค่าและลดค่าจะอยู่ในรูปของค่าตัวเลข
2.6.5 ตัวดำเนินการบิตไวส์ (bitwise operators)
ตารางที่ 2.6 แสดงตัวดำเนินการบิตไวส์
สัญลักษณ์ (symbol) | ตัวดำเนินการ (operators) | ตัวอย่าง |
& | AND | a&b |
| | inclusive OR | a|b |
^ | exclusive OR | a^b |
~ | Complement | ~a |
>> | right shift | a>>2 |
<< | left shift | a<<3 |
ที่มา : Gottfried, S. Byron, 1990 : 475.
2.6.6 ตัวดำเนินการกำหนดค่า (compound assignment operators)
ตารางที่ 2.7 แสดงตัวดำเนินการกำหนดค่า
สัญลักษณ์ (symbol) | ตัวดำเนินการ (operators) | ตัวอย่าง |
= | Assignment | a=b |
+= | Addition | a+=b หมายถึง (a=a+b) |
-= | Subtraction | a-=b หมายถึง (a=a-b) |
*= | Multiplication | a*=b หมายถึง (a=a*b) |
/= | Division | a/=b หมายถึง (a=a/b) |
%= | Remainder | a%=b หมายถึง (a=a%b) |
&= | bitwise AND | a&=b หมายถึง (a=a&b) |
|= | bitwise Inclusive OR | a|=b หมายถึง (a=a|b) |
^= | bitwise exclusive OR | a^=b หมายถึง (a=a^b) |
<<= | right shift | a<<2 หมายถึง (a=a<<2) |
>>= | left shift | a>>3 หมายถึง (a=a>>3) |
ที่มา : Aitken, P. and B. Jones, 1994 : 79.
2.6.7 ตัวดำเนินการแบบเงื่อนไข (conditional operators)
ตารางที่ 2.8 แสดงตัวดำเนินการแบบเงื่อนไข
สัญลักษณ์ (symbol) | ตัวดำเนินการ (operators) | ตัวอย่าง |
Result = (expression) ? Value1 : vaule2 ; | Conditional Operators | Max = (a>b) ? a: b; |
ที่มา : Aitken, P. and B. Jones, 1994 : 80.
ผลลัพธ์ที่ได้จากตัวดำเนินการแบบเงื่อนไขจะให้ค่าใดค่าหนึ่งขึ้นอยู่กับเงื่อนไขที่กำหนดจากตัวอย่างหมายความว่า ถ้าเงื่อนไข a>b เป็นจริงได้ค่า max=a; ถ้าเงื่อนไข a>b เป็นเท็จได้ค่า max=b;
ผลลัพธ์ที่ได้จากตัวดำเนินการแบบเงื่อนไขจะให้ค่าใดค่าหนึ่งขึ้นอยู่กับเงื่อนไขที่กำหนดจากตัวอย่างหมายความว่า ถ้าเงื่อนไข a>b เป็นจริงได้ค่า max=a; ถ้าเงื่อนไข a>b เป็นเท็จได้ค่า max=b;
0 ความคิดเห็น:
แสดงความคิดเห็น