ตัวดำเนินการจะถูกใช้กับตัวแปรและค่าคงที่ในการดำเนินการบางอย่าง เช่น การดำเนินการทางคณิตศาสตร์ ในภาษา C มีตัวดำเนินการประเภทต่างๆ ที่ทำหน้าที่แตกต่างกันไป ในบทนี้ คุณจะได้เรียนรู้เกี่ยวกับตัวดำเนินการและตัวอย่างการใช้ตัวดำเนินการประเภทต่างๆ ในภาษา C
ตัวดำเนินการกำหนดค่า ในภาษา C ใช้สัญลักษณ์เท่ากับ (=) มันถูกใช้เพื่อกำหนดค่าให้กับตัวแปรหรือค่าคงที่ ตัวดำเนินการจะมีสอง Operand การทำงานของมันคือการนำค่าทางด้านขวาไปใส่ทางด้านซ้าย และ Operand ทางด้านขวาสามารถเป็น Expression ใดๆ
a = 2;
b = 3;
c = a + b;
ในตัวอย่างนี้ เราได้สร้างสามตัวแปรและกำหนดค่า 2
ให้กับตัวแปร a
กำหนดค่า 3
ให้กับตัวแปร b
และผลรวมของ a
และ b
ให้กับตัวแปร c
ตามลำดับ
ตัวดำเนินการทางคณิตศาสตร์ คือตัวดำเนินการที่ใช้เพื่อกระทำการดำเนินการทางคณิตศาสตร์ระหว่างตัวแปรหรือค่าคงที่ เช่น การบวก การลบ การคูณ และการหาร สำหรับในการเขียนโปรแกรมในภาษา C นั้นจะมีตัวดำเนินการสำหรับการหารเอาเศษ (Modulo) เพิ่มเข้ามา
ตารางข้างล่างนี้คือตัวดำเนินการทางคณิตศาสตร์ในภาษา C
Compound assignment คือตัวดำเนินการที่ใช้เพื่ออัพเดทหรือแก้ไขค่าปัจจุบันของตัวแปรโดยการกระทำทางคณิตศาสตร์และใช้ตัวดำเนินการกำหนดค่าร่วมด้วย ซึ่งตัวดำเนินการแบบ Compound assignment มักจะใช้เป็นรูปแบบสั้นของตัวดำเนินการทางคณิตศาสตร์และตัวดำเนินการระดับบิตเพื่อให้การเขียนสั้นลง
ข้างล่างนี้เป็นตารางของ Compound assignment operators ในภาษา C
OperatorExampleEquivalent to
+= a += 2; a = a + 2
-= a -= 2; a = a - 2
*= a *= 2; a = a * 2
/= a /= 2; a= a / 2
%= a %= 2; a = a % 2
ตัวดำเนินการเพิ่มและลดค่า คือตัวดำเนินการที่ใช้เพื่อบวกหรือลบค่าออกจากตัวแปรโดย 1 โดยการเพิ่มเครื่องหมาย ++
หรือ--
ใส่ข้างหน้าหรือข้างหลังตัวแปร ซึ่งมีรูปแบบการใช้ดังนี้
identifier++
มาดูตัวอย่างของการใช้ตัวดำเนินการเพิ่มและลดค่า
#include <stdio.h>
int main()
{
int a = 1;
int b = 10;
a++;
b--;
printf("a=%d, b=%d", a, b);
return 0;
}
เมื่อเรารันโปรแกรม นี่เป็นผลลัพธ์ที่เราจะได้
a=2, b=9
เหมือนที่คุณเห็นในตัวอย่าง มันเป็นรูปแบบอย่างสั้นของ a = a + 1
และ b = b - 1
มันมักจะใช้กับคำสั่ง for
loop เพื่อเพิ่มของการรัน Index หรือตำแหน่ง Index ของอาเรย์
และยังมีรูปแบบอื่นของตัวดำเนินการนี้คือ Prefix เช่น ++a
--b
โดยมันหมายถึงจะมีการเพิ่มหรือลดค่าก่อนที่จะมีการประมวลผลคำสั่งปัจจุบัน
ตัวดำเนินการความสัมพันธ์และเปรียบเทียบ คือตัวดำเนินการที่ถูกใช้เพื่อประเมินค่า true
และ false
ระหว่างสองค่าถูกดำเนินการ ซึ่งขึ้นกับเงื่อนไขและความสัมพันธ์ของมัน
ข้างล่างนี้เป็นรายการของตัวดำเนินการ Relational และตัวดำเนินการเปรียบเทียบ
ตัวดำเนินการทางตรรกศาสตร์ถูกใช้เพื่อประเมิน Expression ย่อยหลายๆ Expression ให้เหลือเพียงอันเดียว โดยผลลัพธ์สุดท้ายนั้นจะเป็นจริงหรือเท็จ
ข้างล่างนี้เป็นรายการตัวดำเนินการทางตรรกศาสตร์ในภาษา C
#include <stdio.h>
main(){
float weight,height;
scanf("%f",&weight);
printf("%f",weight);
}