SlideShare a Scribd company logo
ตัวดาเนินการและนิพจน์
(OPERATOR AND EXPRESSIONS)
นิพจน์
                        (Expressions)


        นิพจน์ (Expression) คือ ข้อความหรือประโยคที่เขียนอยู่
ในรูปสัญลักษณ์ โดยนาข้อมูล, ตัวแปร, ฟังก์ชัน หรือค่าคงที่ มา
สัมพันธ์กับตัวดาเนินการ (Operator) อย่างใดอย่างหนึ่ง สิ่งที่
ควรระลึกอยู่เสมอคือในการสร้างนิพจน์ 1 นิพจน์นั้นคือ นิพจน์
จะต้ อ งมี ตั ว ถู ก ระท า (Operand) อย่ า งน้ อ ยหนึ่ ง ตั ว และตั ว
ดาเนินการ (Operator) อย่างน้อยหนึ่งตัว
นิพจน์
                               (Expressions)

    ตัวอย่างกาสร้างนิพจน์ โดยแสดงความสัมพันธ์ระหว่างตัวถูกกระทา ตัวดาเนินการ
   และนิพจน์ ดังนี้ เช่น
                                                             ตัวถูกกระทาตัวที่ 1 (ตัวแปร)
    นิพจน์              C++              C+1                 ค่าคงที่
                                                             ตัวดาเนินการ
         ตัวดาเนินการที่ 1                                   ตัวถูกกระทาตัวที่ 1 (ตัวแปร)
ตัวถูกกระทาตัวที่ 1 (ตัวแปร)   A + B – (C + 2)                 C+2                 ค่าคงที่
ตัวถูกกระทาตัวที่ 2 (ตัวแปร)                  ตัวดาเนินการ
         ตัวดาเนินการที่ 2
ตัวถูกกระทาตัวที่ 3 (นิพจน์)
ตัวดาเนินการ (Operator)
       ในการเขียนโปรแกรมทุกครั้งนั้นจะต้องมีการประมวลผลเข้ามาเกี่ยวข้องเสมอ
  แล้วสิ่งที่ทาให้เกิดการประมวลผลนั้นก็คือ ตัวดาเนินการ สามารถแบ่งออกเป็น
  ประเภทต่าง ๆ ได้ดังนี้
ตัวดาเนินการบอกขนาดชนิดของข้อมูล               ตัวดาเนินการแบบมีเงื่อนไข
     (Sizeof Operators)                    (Conditional Operators)


  ตัวดาเนินการยูนารี
(Unary Operators)
                                                       ตัวดาเนินการกาหนดค่า
                                                    (Assignment Operators)
                             ตัวดาเนินการ
   ตัวดาเนินการตรรกะ                                    ตัวดาเนินการระดับบิต
(Logical Operators)                                   (Bitwise Operators)



       ตัวดาเนินการเปรียบเทียบ            ตัวดาเนินการทางคณิตศาสตร์
    (Comparison Operators)               (Arithmetic Operators)
1. ตัวดาเนินการกาหนดค่า (Assignment Operator)
         ใช้สาหรับการกาหนดค่าให้กับตัวแปรทางด้านซ้ายของตัวดาเนินการ ในการ
    กาหนดค่าของตัวดาเนินการแต่ละชนิด จะมีหลักการทางานที่แตกต่างกัน
ตัวดาเนินการ                               ความหมาย
       =        เท่ากับ : การนาค่าตัวถูกกระทาที่ได้จากด้านขวาของตัวดาเนินการ มา
                ใส่ในตัวถูกกระทาทางด้านซ้ายของตัวดาเนินการ
     +=         บวกเท่ากับ : การกาหนดค่าตัวถูกกระทาทางด้านซ้าย เท่ากับ ค่าตัว
                ถูกกระทาด้านซ้าย บวกกับ ค่าตัวถูกกระทาด้านขวาของตัวดาเนินการ
      -=        ลบเท่ากับ : การกาหนดค่าตัวถูกกระทาทางด้านซ้าย เท่ากับ ค่าตัวถูก
                กระทาด้านซ้าย ลบกับ ค่าตัวถูกกระทาด้านขวาของตัวดาเนินการ
      *=        คูณเท่ากับ : การกาหนดค่าตัวถูกกระทาทางด้านซ้าย เท่ากับ ค่าตัวถูก
                กระทาด้านซ้าย คูณกับ ค่าตัวถูกกระทาด้านขวาของตัวดาเนินการ
1. ตัวดาเนินการกาหนดค่า (Assignment Operator) (ต่อ)

ตัวดาเนินการ                           ความหมาย
      /=     หารเท่ากับ : การกาหนดค่าตัวถูกกระทาทางด้านซ้าย เท่ากับ ค่าตัว
             ถูกกระทาด้านซ้าย หารกับ ค่าตัวถูกกระทาด้านขวาของตัวดาเนินการ
     %=      หารเอาเศษเท่ากับ : การกาหนดค่าตัวถูกกระทาทางด้านซ้าย เท่ากับ
             เศษเหลือจากการหารระหว่างค่ าตัวถูกกระทาด้ านซ้ายกับค่าตัวถู ก
             กระทาด้านขวาของตัวดาเนินการ
2. ตัวดาเนินการทางคณิตศาสตร์ (Arithmetic Operators)
  ตัวดาเนิตั วการ น การทางคณิ ต ศาสตร์ ใ นการเขี ย นโปรแกรม จะมี ก ารท างาน
           น ด าเนิ      ความหมาย                   ตัวอย่าง           ผลลัพธ์
      เหมือนกับการใช้ทางคณิตศาสตร์ทั่วไป โดยมีตวดาเนินการต่าง ๆ ดังนี้
                                               ั
         +           การบวก (Addition)               10 + 4              14
                                                    10 + 4.0            14.00
                                                    10.0 + 4
                                                   10.0 + 4.0
                                                     ‘A’ + 2             67
        -          การลบ (Subtraction)              10 – 4              6
                                                   10.0 – 4           6.00
                                                   10 – 4.0
                                                  10.0 – 4.0
2. ตัวดาเนินการทางคณิตศาสตร์ (Arithmetic Operators) (ต่อ)
  ตัวดาเนินการ        ความหมาย                ตัวอย่าง      ผลลัพธ์
        *           การคูณ (Multiply)          10 * 4         40
                                              10 * 4.0      40.00
                                              10.0 * 4
                                             10.0 * 4.0
                                              10 * -4        -40
                                              -10 * -4        40
       %            การหารเอาเศษ                11%4           3
                      (Modulus)                4%10           4
                                               -11%4          -3
2. ตัวดาเนินการทางคณิตศาสตร์ (Arithmetic Operators) (ต่อ)
  ตัวดาเนินการ        ความหมาย                ตัวอย่าง      ผลลัพธ์
        /            การหาร (Divide)           10 / 4         2
                                              10.0 / 4       2.50
                                              10 / 4.0
                                             10.0 / 4.0
                                                -11/4         -2
                                               11/-4          -2
                                               -11/-4         2
3. ตัวดาเนินการยูนารี (Unary Operators)
  ตัวดาเนินการ    ความหมาย          รูปแบบ    ตัวอย่าง     การทางาน                        ข้อสังเกต
       ++        เพิ่มค่าหนึ่งค่า   Postfix   X = A++    X=A               จะกาหนดค่าให้กับตัวแปร X
                  ให้กับตัวแปร                           A=A+1             ก่อนเพิ่มค่าให้กับตัวแปร A
                                    Prefix    X= ++A     A=A+1             จะเพิ่มค่าให้กับตัวแปร A
                                                         X=A               ก่อนกาหนดค่าให้กบตัวแปร X
                                                                                               ั
      --         ลดค่าลงหนึ่งค่า    Postfix   X = A--    X=A               จะกาหนดค่าให้กับตัวแปร X
                  ให้กับตัวแปร                           A=A-1             ก่อนลดค่าให้กับตัวแปร A
                                    Prefix    X = --A    A=A-1             จะลดค่าให้กับตัวแปร A
                                                         X=A               ก่อนกาหนดค่าให้กบตัวแปร X
                                                                                             ั
       +           บวก (plus)       Prefix    A = +2     ค่าตัวแปร A      กรณีเป็นค่าบวกจะใส่เครื่องหมาย + หรือไม่
                                                         จะมีค่าเท่ากับ 2 ก็ ไ ด้ เพราะกรณี ไ ม่ ใ ส่ เ ครื่ อ งหมาย
                                                                          คอมไพเลอร์จะมองค่านั้นเป็นบวกเสมอ
       -          ลบ (minus)        Prefix     A = -2    ค่าตัวแปร A       เครื่องหมายลบหน้าตัวเลขแสดงถึงค่าเป็น
                                                         จะมีค่าเท่า -2    จานวนลบ
                                              A = -2     A = -2            เมื่ อ ใส่ เครื่ อ งหมายลบหน้ า ตั ว แปรใด ๆ
                                              A = -A     A=2               ผลลัพธ์ที่ได้จะเป็นค่าตรงกันข้าม
4. ตัวดาเนินการเปรียบเทียบ (Comparision Operators)
    เป็นตัวดาเนินการสาหรับเปรียบเทียบข้อมูลระหว่างตัวถูกกระทาทางด้านซ้ายและ
 ด้านขวา ผลลัพธ์ที่ได้จะมีค่าเป็นจริง (True) หรือเท็จ (False) เท่านั้น
   ตัวดาเนินการ                                  ความหมาย                                       ตัวอย่าง
       ==         เท่ากับ : เปรียบเทียบระหว่างตัวถูกกระทาด้านซ้ายกับ A = = B
                  ด้านขวาของตัวดาเนินการ ว่ามีค่าเท่ากันหรือไม่ ถ้าเท่ากันจะ
                  ให้ผลลัพธ์เป็นจริง ถ้าไม่เท่ากันจะให้ผลลัพธ์เป็นเท็จ
       !=         ไม่ เ ท่ า กั บ : เปรีย บเที ย บระหว่ า งตั ว ถู ก กระท าด้ า นซ้ า ยกั บ A ! = B
                  ด้ า นขวาของตั ว ด าเนิ น การ ว่ า มี ค่ า ไม่ เ ท่ า กั น หรื อ ไม่ ถ้ า ไม่
                  เท่ากันจะให้ผลลัพธ์เป็นจริง ถ้าเท่ากันจะให้ผลลัพธ์เป็นเท็จ
        >         มากกว่า : เปรียบเทียบระหว่างตัวถูกกระทาด้านซ้ายมีค่า A > B
                  มากกว่าตัวถูกกระทาด้านขวาของตัวดาเนินการหรือไม่ ถ้า
                  มากกว่าจะให้ผลลัพธ์เป็นจริง ถ้าน้อยกว่าจะให้ผลลัพธ์เป็นเท็จ
4. ตัวดาเนินการเปรียบเทียบ (Comparision Operators) (ต่อ)
 ตัวดาเนินการ                           ความหมาย                              ตัวอย่าง
      >=      มากกว่าหรือเท่ากับ : เปรียบเทียบระหว่างตัวถูกกระทาด้านซ้ายมีค่า A > = B
                มากกว่ า หรื อ เท่ า กั บ ตั ว ถู ก กระท าด้ า นขวาของตั ว ด าเนิ น การ ถ้ า
                มากกว่าหรือเท่ากับจะให้ผลลัพธ์เป็นจริง ถ้าไม่ใช่จะให้ผลลัพธ์เป็นเท็จ
      <         น้อยกว่า : เปรียบเทียบระหว่างตัวถูกกระทาด้านซ้ายมีค่าน้อยกว่าตัว               A<B
                ถูกกระทาด้านขวาของตัวดาเนินการหรือไม่ ถ้าน้อยกว่าจะให้ผลลัพธ์
                เป็นจริง ถ้ามากกว่าจะให้ผลลัพธ์เป็นเท็จ
      <=        น้อยกว่าหรือเท่ากับ : เปรียบเทียบระหว่างตัวถูกกระทาด้านซ้ายมีค่า A <= B
                น้อยกว่าหรือเท่ากับตัวถูกกระทาด้านขวาของตัวดาเนินการ ถ้าน้อย
                กว่าหรือเท่ากับจะให้ผลลัพธ์เป็นจริง ถ้าไม่ใช่จะให้ผลลัพธ์เป็นเท็จ
5. ตัวดาเนินการตรรกะ (Logial Operators)
           ตัวดาเนินการตรรกะ (Logial Operators) เป็นตัวดาเนินการทางด้าน
     ตรรกศาสตร์ ใช้สาหรับกาหนดเงื่อนไขมากกว่า 1 เงื่อนไข ซึ่งผลลัพธ์ที่ได้จะมีค่า
     เป็นจริง(True) หรือ เท็จ(False) เท่านั้น
   ตัวดาเนินการ                      ความหมาย                            ตัวอย่าง
       &&         และ : ใช้กาหนดเงื่อนไขในกรณีที่ต้องการให้เงื่อนไข (A>B) && A>C)
                  ของนิพจน์ด้านซ้ายและด้านขวาของตัวดาเนินเป็นจริง
                  ทั้งสองด้าน จึงทางานที่ต้องการ
        ||        หรือ : ใช้กาหนดเงื่อนไขในกรณีที่ต้องการให้เงื่อนไข (A>B) || (A>C)
                  ของนิพจน์และด้านขวาของตัวดาเนินการเป็นจริงด้าน
                  ใดด้านหนึ่งหรือทั้งสองด้าน จึงทางานที่ต้องการ
        !         นิเสธ (not) : ใช้กาหนดเงื่อนไขในกรณีท่ต้องการค่า
                                                         ี              !(A < B)
                  ความจริงตรงกันข้าม
ตารางเปรียบเทียบค่าความจริงของนิพจน์ โดยกาหนดให้ p และ q เป็นตัวถูก
ดาเนินการทางตรรกศาสตร์
        p          q        p && q      p || q        !p         !q
       จริง       จริง        จริง       จริง        เท็จ       เท็จ
       จริง       เท็จ        เท็จ       จริง        เท็จ       จริง
       เท็จ       จริง        เท็จ       จริง        จริง       เท็จ
       เท็จ       เท็จ        เท็จ       เท็จ        จริง       จริง
6. ตัวดาเนินการแบบมีเงือนไข (Condition Operators)
                       ่

                   ตัวดาเนินการชนิดนี้ใช้สาหรับตรวจสอบเงื่อนไขของนิพจน์ ว่า
                   มีความจริงเป็นจริง (True) หรือเท็จ (False) โดยมีรูปแบบการ
                   ใช้งานดังนี้



                    Expression ? ValueTrue : ValueFalse;


                   โดยที่ Expression คือ นิพจน์เงื่อนไข
                          ValueTrue คือ ค่าที่ได้กรณีที่เงื่อนไขเป็นจริง
                          ValueFalse คือ ค่าที่ได้กรณีเงื่อนไขเป็นเท็จ
7. ตัวดาเนินการบอกขนาดชนิดข้อมูล (Sizeof Operators)

       ตั ว ด าเนิ น การชนิ ด นี้ จ ะใช้ ส าหรั บ หาขนาดชนิ ด ของข้ อ มู ล ต่ า ง ๆ ที่
    ต้องการรู้ โดยมีรูปแบบการใช้งานดังนี้
            sizeof(Data)
            โดยที่ sizeof คือ ตัวดาเนินการบอกขนาดชนิดข้อมูล
                   Data คือ ชนิดข้อมูลหรือตัวแปรที่ต้องการทราบขนาด
8. ตัวดาเนินการระดับบิต (Bitwse Operators)


               ในบางครั้งเราก็ต้องมีการประมวลผลในระดับบิต ซึ่งเป็นหน่วย
               ข้อมูลที่เล็กที่สุด การทางานในระดับบิตนี้จะช่วยให้ CPU ทางาน
               เร็วขึ้น เพราะว่า CPU ประมวลผลที่ชนิดข้อมูลที่เป็นบิตเท่านั้น
               ซึ่งถ้าเป็นข้อมูลชนิดอื่น ๆ จะต้องแปลงข้อมูลให้เป็นบิตก่อน

               บันทึก
                   บิต (Bit) เป็นหน่วยข้อมูลที่เล็กที่สุด โดยข้อมูลหนึ่งบิตจะมี
               สถานะได้ 2 สถานะ คือ 0 (ปิด) หรือ 1 (เปิด) หรือเรียกอีก
               อย่างว่า เลขฐานสอง
ตารางแสดงผลการทางานของตัวดาเนินการระดับบิต โดยกาหนดให้
  p และ q เป็นตัวถูกดาเนินการระหว่างบิต
  p q (Bitwise AND)             (Bitwise OR) (Bitwise XOR)
                   p&q              p|q          p^q
  0     0          0                0                0
  0     1          0                1                1
  1     0          0                1                1
  1     1          1                1                0

• p & q หมายถึงให้ผลลัพธ์การเปรียบเทียบแบบ AND ระหว่าง p กับ q
• p | q หมายถึงให้ผลลัพธ์การเปรียบเทียบแบบ OR ระหว่าง p กับ q
• p ^ q หมายถึงให้ผลลัพธ์การเปรียบเทียบแบบ XOR ระหว่าง p กับ q
Bitwise Shift Left

Bitwise Shift Left (<<) เป็นตัวดาเนินการสาหรับเลื่อนค่าบิต
ไปทางซ้าย โดยมีหลักการทางาน ดังนี้
กาหนดให้ X เป็นตัวถูกดาเนินการ (อยู่ในรูปแบบเลขฐานสอง)
และ Y เป็นจานวนการ Shift โดยที่ X << Y หมายถึง เลื่อนบิต
ในตัวถูกดาเนินการ X ไปทางซ้าย Y บิต ผลลัพธ์ที่ได้จากการ
Shift Left จะได้เท่ากบผลคูณของ X กับ 2Y
       1       1      0       1   …     1     0        1   0


 1     1       0       1      0   …     0      1       0   0

       บิตซ้ายมือสุดตัดทิ้ง       บิตขวามือสุดเติม 0
Bitwise Shift Right

Bitwise Shift Right (>>) เป็นตัวดาเนินการสาหรับเลื่อนค่าบิต
ไปทางขวา โดยมีหลักการทางาน ดังนี้
กาหนดให้ X เป็นตัวถูกดาเนินการ (อยู่ในรูปแบบเลขฐานสอง)
และ Y เป็นจานวนการ Shift โดยที่ X >> Y หมายถึง เลื่อนบิต
ในตัวถูกดาเนินการ X ไปทางขวา Y บิต ผลลัพธ์ที่ได้จากการ
Shift Right จะได้เท่ากับผลหารของ X กับ 2Y
  1      1      0       1   …   1         0      1     0


  0      0      1       0   …   0         1      0     1   0
  บิตซ้ายมือสุดเติม 0               บิตขวามือตัดทิ้ง
One’s Complement ()
One’s Complement () เป็นตัวดาเนินการสาหรับปรับค่าของบิต
เป็นค่าตรงกันข้าม กล่าวคือปรบค่าบิต 1 เปลี่ยนเป็นค่าบิต 0 และ
ปรับค่าบิต 0 เปลี่ยนเป็นค่าบิต 1 ซึ่งเราสามารถสรุปได้ดังตาราง
ดังนี้
ค่าบิตเริ่มต้น (P)   ผลจากการทา One’s Complement (P)
        1                          0
        0                           1
ลาดับความสาคัญของตัวดาเนินการ
              (Operator of Precedence)

       ในการทางานของตัวดาเนินการ (Operator) แต่
ละตัวนั้น ลาดับการทางานจะขึ้นอยู่กับลาดับความสาคัญ
(Precedence) ของตัวดาเนินการนั้น ๆ ด้วย การทางาน
จะเริ่มจากลาดับความสาคัญสูงไปยังต่า
*จากตารางที่จะแสดงต่อไปนั้น ลาดับความสาคัญที่ 1 จะ
มีความสาคัญสูงสุด และลาดับความสาคัญที่ 18 จะมี
ความสาคัญต่าสุด
ตารางแสดงลาดับความสาคัญของตัวดาเนินการ

                                                 การทางานเริ่ม
  ลาดับ
          ตัวดาเนินการ              ความหมาย          จาก
ความสาคัญ
                                                 (Associativity)
    1          ()        วงเล็บ (Identifier)    ไม่ได้กาหนด
                                                (N/A)
   2           ()        ฟังก์ชัน (Function)    ซ้ายไปขวา
               []        อาร์เรย์ (Array)       (Left)
                         Structure Selection
                         Structure Member
ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ)
  ลาดับ                                               การทางานเริ่มจาก
          ตัวดาเนินการ            ความหมาย
ความสาคัญ                                              (Associativity)
   3           ++        เพิ่มค่าขึ้นอีกหนึ่งค่า โดยตัว ซ้ายไปขวา
                         ด าเนิ น การอยู่ ห ลังตัวถู ก (Left)
                         กระทา (Postfix Increment)
               --        ลดค่ า ลงอี ก หนึ่ ง ค่ า โดยตั ว
                         ด าเนิ น การอยู่ ห ลังตัวถู ก
                         กระทา (Postfix Decrement)
ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ)
                                                                 การทางานเริ่ม
  ลาดับ
          ตัวดาเนินการ                ความหมาย                        จาก
ความสาคัญ
                                                                 (Associativity)
   4           ++        เพิ่ ม ค่ า ขึ้ น อี ก หนึ่ ง ค่ า โดยตั ว ขวาไปซ้าย
                         ด าเนิ น ก าร อยู่ ห น้ าตั ว ถู ก (Left)
                         กระทา (Prefix Increment)
               --        ลดค่ า ลงอี ก หนึ่ ง ค่ า โดยตั ว
                         ด าเนิ น ก าร อยู่ ห น้ าตั ว ถู ก
                         กระทา (Prefix Decrement)
ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ)
  ลาดับ                                                           การทางานเริ่มจาก
          ตัวดาเนินการ                ความหมาย
ความสาคัญ                                                          (Associativity)
    4        sizeof      หาขนาดชนิดข้อมูล                         ซ้ายไปขวา
  (ต่อ)                  (Size of Object in byte)                 (Left)
                +        บวก (plus)
                -        ลบ (minus)
                !        ตรรกะนิเสธ (not)
                &        ชี้ ที่ อ ยู่ ใ น ห น่ ว ย ค ว า ม จ า
                         (Address)
ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ)
  ลาดับ                                                การทางานเริ่มจาก
          ตัวดาเนินการ              ความหมาย
ความสาคัญ                                               (Associativity)
    4           *        ตัวชีพอยเตอร์ (Indirection)
                              ้                        ซ้ายไปขวา
  (ต่อ)                 วันคอมพลีเมนต์                (Left)
                         (One’s Complement)
   5           ()        แปลงค่าชนิดข้อมูล
   6           *         คูณ (Multiply)                ซ้ายไปขวา
               /         หาร (Divide)
               %         หารเอาเศษ (Modulus)
ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ)
  ลาดับ                                        การทางานเริ่มจาก
          ตัวดาเนินการ         ความหมาย
ความสาคัญ                                       (Associativity)
   7           +         บวกเพิ่มค่า (Addition) ซ้ายไปขวา
                -        ลบลดค่า (Subtraction)
   8           <<        เลื่อนบิตไปทางซ้าย
                         (Bit Left)
               >>        เลื่อนบิตไปทางขวา
                         (Bit Right)
   9            >        เปรียบเทียบมากกว่า
                <        เปรียบเทียบน้อยกว่า
ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ)
  ลาดับ                                               การทางานเริ่มจาก
          ตัวดาเนินการ             ความหมาย
ความสาคัญ                                              (Associativity)
    9          >=        เปรียบเทียบมากกว่าเท่ากับ    ซ้ายไปขวา
  (ต่อ)        <=        เปรียบเทียบน้อยกว่าเท่ากับ
   10          ==        เปรียบเทียบเท่ากับ
               !=        เปรียบเทียบไม่เท่ากับ
   11          &         การกระทาบิต AND
                         (bitwise AND)
   12           ^        การกระทาบิต XOR
                         (bitwise exclusive OR)
ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ)
  ลาดับ                                             การทางานเริ่มจาก
          ตัวดาเนินการ            ความหมาย
ความสาคัญ                                            (Associativity)
   13          l         การกระทาบิต OR (bitwise OR) ซ้ายไปขวา
   14         &&         ตรรกะ AND (Logical AND)
   15         Ll         ตรรกะ OR (Logical OR)
   16         ?:         เงื่อนไข (Conditional)      ขวาไปซ้าย
   17      = += -=       กาหนดค่าให้ตัวถูกกระทา
           *= /= %=      (Assignment)
           >>= <<=       กาหนดค่าระดับบิต
           &= ^= l=      (Bit Assignment)
ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ)
  ลาดับ                                        การทางานเริ่มจาก
          ตัวดาเนินการ           ความหมาย
ความสาคัญ                                       (Associativity)
   18           ,        คอมมา (Comma)         ซ้ายไปขวา
ที่มา : คู่มืออบรมครูวิทยาศาสตร์ คณิตศาสตร์ คอมพิวเตอร์ โลก ดาราศาสตร์ และอวกาศ ระดับมัธยมศึกษาตอนปลาย
        หนังสือเรียนรายวิชาเพิ่มเติม การเขียนโปรแกรมเบื้องต้นด้วยภาษา C บริษทซัคเซสมีเดีย
        คู่มือเรียนเขียนโปรแกรมภาษา สานักพิมพ์ IDC PREMIER

More Related Content

Viewers also liked

3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
รัสนา สิงหปรีชา
 
Schonagen 202 syllabus spring 2013
Schonagen 202 syllabus spring 2013Schonagen 202 syllabus spring 2013
Schonagen 202 syllabus spring 2013
LifeoftheMind
 
บทที่ 2 ข้อมูล สารสนเทศ และความรู้
บทที่ 2  ข้อมูล สารสนเทศ และความรู้บทที่ 2  ข้อมูล สารสนเทศ และความรู้
บทที่ 2 ข้อมูล สารสนเทศ และความรู้
รัสนา สิงหปรีชา
 
Bibliografia ECONOMIA Prof Carlos Jatobá
Bibliografia ECONOMIA Prof Carlos JatobáBibliografia ECONOMIA Prof Carlos Jatobá
Bibliografia ECONOMIA Prof Carlos Jatobá
Pinelly Mariana
 
El principio del_vacio
El principio del_vacioEl principio del_vacio
El principio del_vacio
Irina Donado
 
Sistemas de seguridad ronny
Sistemas de seguridad ronnySistemas de seguridad ronny
Sistemas de seguridad ronny
Ximena Martinez
 
John Gwozdz - resume 8-10-16
John Gwozdz - resume  8-10-16John Gwozdz - resume  8-10-16
John Gwozdz - resume 8-10-16
John Gwozdz
 
Pptranitas
PptranitasPptranitas
Impressionismo
ImpressionismoImpressionismo
Impressionismo
Lindomar Araujo
 
Decisão Interlocutória Por – Rafael Rufino Melo Paes de Andrade Contra – Rádi...
Decisão Interlocutória Por – Rafael Rufino Melo Paes de Andrade Contra – Rádi...Decisão Interlocutória Por – Rafael Rufino Melo Paes de Andrade Contra – Rádi...
Decisão Interlocutória Por – Rafael Rufino Melo Paes de Andrade Contra – Rádi...
RÁDIO PORTAL DOS INHAMUNS - CATARINA
 
Shakespeare
ShakespeareShakespeare
Shakespeare
manuela123456
 
Curso pc
Curso pcCurso pc
Curso pc
pelonaal
 
Coloquio 25 out2012- Lindomar Araujo
Coloquio 25 out2012- Lindomar AraujoColoquio 25 out2012- Lindomar Araujo
Coloquio 25 out2012- Lindomar Araujo
Lindomar Araujo
 
Met de catalogus naar de klant... de UBA op Facebook
Met de catalogus naar de klant... de UBA op FacebookMet de catalogus naar de klant... de UBA op Facebook
Met de catalogus naar de klant... de UBA op Facebook
Mariëtte van Selm
 
aaronparkerresume (5)
aaronparkerresume (5)aaronparkerresume (5)
aaronparkerresume (5)
Aaron Parker
 
El medio ambiente curso sistemas
El medio ambiente  curso sistemasEl medio ambiente  curso sistemas
El medio ambiente curso sistemas
SilvaCasHer15
 
Allende
AllendeAllende
Allende
dlude
 
Proyecto tics...
Proyecto tics...Proyecto tics...
Proyecto tics...
MAYRALUCIO
 

Viewers also liked (20)

3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
 
Schonagen 202 syllabus spring 2013
Schonagen 202 syllabus spring 2013Schonagen 202 syllabus spring 2013
Schonagen 202 syllabus spring 2013
 
บทที่ 2 ข้อมูล สารสนเทศ และความรู้
บทที่ 2  ข้อมูล สารสนเทศ และความรู้บทที่ 2  ข้อมูล สารสนเทศ และความรู้
บทที่ 2 ข้อมูล สารสนเทศ และความรู้
 
Bibliografia ECONOMIA Prof Carlos Jatobá
Bibliografia ECONOMIA Prof Carlos JatobáBibliografia ECONOMIA Prof Carlos Jatobá
Bibliografia ECONOMIA Prof Carlos Jatobá
 
El principio del_vacio
El principio del_vacioEl principio del_vacio
El principio del_vacio
 
Sistemas de seguridad ronny
Sistemas de seguridad ronnySistemas de seguridad ronny
Sistemas de seguridad ronny
 
John Gwozdz - resume 8-10-16
John Gwozdz - resume  8-10-16John Gwozdz - resume  8-10-16
John Gwozdz - resume 8-10-16
 
Pptranitas
PptranitasPptranitas
Pptranitas
 
ElectricalCert
ElectricalCertElectricalCert
ElectricalCert
 
Impressionismo
ImpressionismoImpressionismo
Impressionismo
 
Decisão Interlocutória Por – Rafael Rufino Melo Paes de Andrade Contra – Rádi...
Decisão Interlocutória Por – Rafael Rufino Melo Paes de Andrade Contra – Rádi...Decisão Interlocutória Por – Rafael Rufino Melo Paes de Andrade Contra – Rádi...
Decisão Interlocutória Por – Rafael Rufino Melo Paes de Andrade Contra – Rádi...
 
Shakespeare
ShakespeareShakespeare
Shakespeare
 
Curso pc
Curso pcCurso pc
Curso pc
 
Coloquio 25 out2012- Lindomar Araujo
Coloquio 25 out2012- Lindomar AraujoColoquio 25 out2012- Lindomar Araujo
Coloquio 25 out2012- Lindomar Araujo
 
Met de catalogus naar de klant... de UBA op Facebook
Met de catalogus naar de klant... de UBA op FacebookMet de catalogus naar de klant... de UBA op Facebook
Met de catalogus naar de klant... de UBA op Facebook
 
aaronparkerresume (5)
aaronparkerresume (5)aaronparkerresume (5)
aaronparkerresume (5)
 
El medio ambiente curso sistemas
El medio ambiente  curso sistemasEl medio ambiente  curso sistemas
El medio ambiente curso sistemas
 
Inglés grado 6 2
Inglés grado 6 2Inglés grado 6 2
Inglés grado 6 2
 
Allende
AllendeAllende
Allende
 
Proyecto tics...
Proyecto tics...Proyecto tics...
Proyecto tics...
 

Similar to งานทำBlog บทที่ 4

C lab5 2
C lab5 2C lab5 2
ตัวดำเนินการทางคณิตศาสตร์
ตัวดำเนินการทางคณิตศาสตร์ตัวดำเนินการทางคณิตศาสตร์
ตัวดำเนินการทางคณิตศาสตร์เทวัญ ภูพานทอง
 
นิพจน์
นิพจน์นิพจน์
นิพจน์
korn27122540
 
การเขียนคำสั่งควบคุมแบบวนซ้ำ
การเขียนคำสั่งควบคุมแบบวนซ้ำการเขียนคำสั่งควบคุมแบบวนซ้ำ
การเขียนคำสั่งควบคุมแบบวนซ้ำ
ITitle A'lohaa
 
การเขียนแบบคำสั่งควบคุมแบบวนซ้ำ
การเขียนแบบคำสั่งควบคุมแบบวนซ้ำการเขียนแบบคำสั่งควบคุมแบบวนซ้ำ
การเขียนแบบคำสั่งควบคุมแบบวนซ้ำ
Kornnicha Wonglai
 
การสร้างแบบสอบถาม
 การสร้างแบบสอบถาม การสร้างแบบสอบถาม
การสร้างแบบสอบถามkruthanyaporn
 
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 06
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 06การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 06
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 06
Jenchoke Tachagomain
 
ตัวกำหนด(Determinant)
ตัวกำหนด(Determinant)ตัวกำหนด(Determinant)
ตัวกำหนด(Determinant)
kroojaja
 
3.Expression
3.Expression3.Expression
3.Expression
UsableLabs
 
งานนำเสนอ1
 งานนำเสนอ1 งานนำเสนอ1
งานนำเสนอ1Ing Gnii
 
การเขียนคำสั่งควบคุมแบบวนซ้ำ
การเขียนคำสั่งควบคุมแบบวนซ้ำการเขียนคำสั่งควบคุมแบบวนซ้ำ
การเขียนคำสั่งควบคุมแบบวนซ้ำ
Poeruthai Kittiphan
 
เครื่องหมายและการดำเนินการในภาษาซี
เครื่องหมายและการดำเนินการในภาษาซีเครื่องหมายและการดำเนินการในภาษาซี
เครื่องหมายและการดำเนินการในภาษาซีเทวัญ ภูพานทอง
 
กลุ่ม 4 การเขียนคำสั่งควบคุมแบบวนซ้ำ
กลุ่ม 4 การเขียนคำสั่งควบคุมแบบวนซ้ำกลุ่ม 4 การเขียนคำสั่งควบคุมแบบวนซ้ำ
กลุ่ม 4 การเขียนคำสั่งควบคุมแบบวนซ้ำSarocha Makranit
 

Similar to งานทำBlog บทที่ 4 (20)

3.4 ตัวดำเนินการและนิพจน์
3.4 ตัวดำเนินการและนิพจน์3.4 ตัวดำเนินการและนิพจน์
3.4 ตัวดำเนินการและนิพจน์
 
งานทำBlog บทที่ 4
งานทำBlog บทที่ 4งานทำBlog บทที่ 4
งานทำBlog บทที่ 4
 
C lab5 2
C lab5 2C lab5 2
C lab5 2
 
Unit9
Unit9Unit9
Unit9
 
ตัวดำเนินการทางคณิตศาสตร์
ตัวดำเนินการทางคณิตศาสตร์ตัวดำเนินการทางคณิตศาสตร์
ตัวดำเนินการทางคณิตศาสตร์
 
นิพจน์
นิพจน์นิพจน์
นิพจน์
 
การเขียนคำสั่งควบคุมแบบวนซ้ำ
การเขียนคำสั่งควบคุมแบบวนซ้ำการเขียนคำสั่งควบคุมแบบวนซ้ำ
การเขียนคำสั่งควบคุมแบบวนซ้ำ
 
การเขียนแบบคำสั่งควบคุมแบบวนซ้ำ
การเขียนแบบคำสั่งควบคุมแบบวนซ้ำการเขียนแบบคำสั่งควบคุมแบบวนซ้ำ
การเขียนแบบคำสั่งควบคุมแบบวนซ้ำ
 
การสร้างแบบสอบถาม
 การสร้างแบบสอบถาม การสร้างแบบสอบถาม
การสร้างแบบสอบถาม
 
งานทำBlog บทที่ 4
งานทำBlog บทที่ 4งานทำBlog บทที่ 4
งานทำBlog บทที่ 4
 
งานทำBlog บทที่ 4
งานทำBlog บทที่ 4งานทำBlog บทที่ 4
งานทำBlog บทที่ 4
 
3.4 ตัวดำเนินการและนิพจน์
3.4 ตัวดำเนินการและนิพจน์3.4 ตัวดำเนินการและนิพจน์
3.4 ตัวดำเนินการและนิพจน์
 
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 06
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 06การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 06
การพัฒนาเอกสารออนไลน์ขั้นสูง Lect 06
 
ตัวกำหนด(Determinant)
ตัวกำหนด(Determinant)ตัวกำหนด(Determinant)
ตัวกำหนด(Determinant)
 
3.Expression
3.Expression3.Expression
3.Expression
 
งานนำเสนอ1
 งานนำเสนอ1 งานนำเสนอ1
งานนำเสนอ1
 
การเขียนคำสั่งควบคุมแบบวนซ้ำ
การเขียนคำสั่งควบคุมแบบวนซ้ำการเขียนคำสั่งควบคุมแบบวนซ้ำ
การเขียนคำสั่งควบคุมแบบวนซ้ำ
 
Chapter1
Chapter1Chapter1
Chapter1
 
เครื่องหมายและการดำเนินการในภาษาซี
เครื่องหมายและการดำเนินการในภาษาซีเครื่องหมายและการดำเนินการในภาษาซี
เครื่องหมายและการดำเนินการในภาษาซี
 
กลุ่ม 4 การเขียนคำสั่งควบคุมแบบวนซ้ำ
กลุ่ม 4 การเขียนคำสั่งควบคุมแบบวนซ้ำกลุ่ม 4 การเขียนคำสั่งควบคุมแบบวนซ้ำ
กลุ่ม 4 การเขียนคำสั่งควบคุมแบบวนซ้ำ
 

More from รัสนา สิงหปรีชา

บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบบทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
รัสนา สิงหปรีชา
 
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อกบทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
รัสนา สิงหปรีชา
 
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
รัสนา สิงหปรีชา
 
3.1 องค์ประกอบของคอมพิวเตอร์
3.1 องค์ประกอบของคอมพิวเตอร์3.1 องค์ประกอบของคอมพิวเตอร์
3.1 องค์ประกอบของคอมพิวเตอร์
รัสนา สิงหปรีชา
 
3.8 การทำงานแบบลำดับ
3.8 การทำงานแบบลำดับ3.8 การทำงานแบบลำดับ
3.8 การทำงานแบบลำดับ
รัสนา สิงหปรีชา
 
3.8 การทำงานตามลำดับ
3.8 การทำงานตามลำดับ3.8 การทำงานตามลำดับ
3.8 การทำงานตามลำดับ
รัสนา สิงหปรีชา
 
3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล
รัสนา สิงหปรีชา
 
3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล
รัสนา สิงหปรีชา
 
3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน
รัสนา สิงหปรีชา
 
3.5 การแสดงผลและการรับข้อมูล
3.5 การแสดงผลและการรับข้อมูล3.5 การแสดงผลและการรับข้อมูล
3.5 การแสดงผลและการรับข้อมูล
รัสนา สิงหปรีชา
 
3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี
รัสนา สิงหปรีชา
 

More from รัสนา สิงหปรีชา (20)

บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบบทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
บทที่ 6-การใช้งานเทคโนโลยีสารสนเทศอย่างมีความรับผิดชอบ
 
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อกบทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
บทที่ 1 เทคโนโลยีสมัยใหม่เอาลงบล๊อก
 
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
3.1 การทำงานขั้นพื้นฐานของคอมพิวเตอร์
 
3.1 องค์ประกอบของคอมพิวเตอร์
3.1 องค์ประกอบของคอมพิวเตอร์3.1 องค์ประกอบของคอมพิวเตอร์
3.1 องค์ประกอบของคอมพิวเตอร์
 
3.8 การทำงานแบบลำดับ
3.8 การทำงานแบบลำดับ3.8 การทำงานแบบลำดับ
3.8 การทำงานแบบลำดับ
 
3.8 การทำงานตามลำดับ
3.8 การทำงานตามลำดับ3.8 การทำงานตามลำดับ
3.8 การทำงานตามลำดับ
 
3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล
 
3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล
 
3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล3.3. ชนิดของข้อมูล
3.3. ชนิดของข้อมูล
 
3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน3.2 ตัวแปรและคำสงวน
3.2 ตัวแปรและคำสงวน
 
คู่มือนักเรียน 3.1
คู่มือนักเรียน 3.1คู่มือนักเรียน 3.1
คู่มือนักเรียน 3.1
 
คู่มือครู
คู่มือครูคู่มือครู
คู่มือครู
 
3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี
 
3.8 การทำงานตามลำดับ
3.8 การทำงานตามลำดับ3.8 การทำงานตามลำดับ
3.8 การทำงานตามลำดับ
 
3.7 การเขียนผังงาน
3.7 การเขียนผังงาน3.7 การเขียนผังงาน
3.7 การเขียนผังงาน
 
3.6 ฟังก์ชัน
3.6 ฟังก์ชัน3.6 ฟังก์ชัน
3.6 ฟังก์ชัน
 
3.5 การแสดงผลและการรับข้อมูล
3.5 การแสดงผลและการรับข้อมูล3.5 การแสดงผลและการรับข้อมูล
3.5 การแสดงผลและการรับข้อมูล
 
3.3 ชนิดของข้อมูล
3.3 ชนิดของข้อมูล3.3 ชนิดของข้อมูล
3.3 ชนิดของข้อมูล
 
3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี
 
3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี3.1 โครงสร้างของภาษาซี
3.1 โครงสร้างของภาษาซี
 

งานทำBlog บทที่ 4

  • 2. นิพจน์ (Expressions) นิพจน์ (Expression) คือ ข้อความหรือประโยคที่เขียนอยู่ ในรูปสัญลักษณ์ โดยนาข้อมูล, ตัวแปร, ฟังก์ชัน หรือค่าคงที่ มา สัมพันธ์กับตัวดาเนินการ (Operator) อย่างใดอย่างหนึ่ง สิ่งที่ ควรระลึกอยู่เสมอคือในการสร้างนิพจน์ 1 นิพจน์นั้นคือ นิพจน์ จะต้ อ งมี ตั ว ถู ก ระท า (Operand) อย่ า งน้ อ ยหนึ่ ง ตั ว และตั ว ดาเนินการ (Operator) อย่างน้อยหนึ่งตัว
  • 3. นิพจน์ (Expressions) ตัวอย่างกาสร้างนิพจน์ โดยแสดงความสัมพันธ์ระหว่างตัวถูกกระทา ตัวดาเนินการ และนิพจน์ ดังนี้ เช่น ตัวถูกกระทาตัวที่ 1 (ตัวแปร) นิพจน์ C++ C+1 ค่าคงที่ ตัวดาเนินการ ตัวดาเนินการที่ 1 ตัวถูกกระทาตัวที่ 1 (ตัวแปร) ตัวถูกกระทาตัวที่ 1 (ตัวแปร) A + B – (C + 2) C+2 ค่าคงที่ ตัวถูกกระทาตัวที่ 2 (ตัวแปร) ตัวดาเนินการ ตัวดาเนินการที่ 2 ตัวถูกกระทาตัวที่ 3 (นิพจน์)
  • 4. ตัวดาเนินการ (Operator) ในการเขียนโปรแกรมทุกครั้งนั้นจะต้องมีการประมวลผลเข้ามาเกี่ยวข้องเสมอ แล้วสิ่งที่ทาให้เกิดการประมวลผลนั้นก็คือ ตัวดาเนินการ สามารถแบ่งออกเป็น ประเภทต่าง ๆ ได้ดังนี้ ตัวดาเนินการบอกขนาดชนิดของข้อมูล ตัวดาเนินการแบบมีเงื่อนไข (Sizeof Operators) (Conditional Operators) ตัวดาเนินการยูนารี (Unary Operators) ตัวดาเนินการกาหนดค่า (Assignment Operators) ตัวดาเนินการ ตัวดาเนินการตรรกะ ตัวดาเนินการระดับบิต (Logical Operators) (Bitwise Operators) ตัวดาเนินการเปรียบเทียบ ตัวดาเนินการทางคณิตศาสตร์ (Comparison Operators) (Arithmetic Operators)
  • 5. 1. ตัวดาเนินการกาหนดค่า (Assignment Operator) ใช้สาหรับการกาหนดค่าให้กับตัวแปรทางด้านซ้ายของตัวดาเนินการ ในการ กาหนดค่าของตัวดาเนินการแต่ละชนิด จะมีหลักการทางานที่แตกต่างกัน ตัวดาเนินการ ความหมาย = เท่ากับ : การนาค่าตัวถูกกระทาที่ได้จากด้านขวาของตัวดาเนินการ มา ใส่ในตัวถูกกระทาทางด้านซ้ายของตัวดาเนินการ += บวกเท่ากับ : การกาหนดค่าตัวถูกกระทาทางด้านซ้าย เท่ากับ ค่าตัว ถูกกระทาด้านซ้าย บวกกับ ค่าตัวถูกกระทาด้านขวาของตัวดาเนินการ -= ลบเท่ากับ : การกาหนดค่าตัวถูกกระทาทางด้านซ้าย เท่ากับ ค่าตัวถูก กระทาด้านซ้าย ลบกับ ค่าตัวถูกกระทาด้านขวาของตัวดาเนินการ *= คูณเท่ากับ : การกาหนดค่าตัวถูกกระทาทางด้านซ้าย เท่ากับ ค่าตัวถูก กระทาด้านซ้าย คูณกับ ค่าตัวถูกกระทาด้านขวาของตัวดาเนินการ
  • 6. 1. ตัวดาเนินการกาหนดค่า (Assignment Operator) (ต่อ) ตัวดาเนินการ ความหมาย /= หารเท่ากับ : การกาหนดค่าตัวถูกกระทาทางด้านซ้าย เท่ากับ ค่าตัว ถูกกระทาด้านซ้าย หารกับ ค่าตัวถูกกระทาด้านขวาของตัวดาเนินการ %= หารเอาเศษเท่ากับ : การกาหนดค่าตัวถูกกระทาทางด้านซ้าย เท่ากับ เศษเหลือจากการหารระหว่างค่ าตัวถูกกระทาด้ านซ้ายกับค่าตัวถู ก กระทาด้านขวาของตัวดาเนินการ
  • 7. 2. ตัวดาเนินการทางคณิตศาสตร์ (Arithmetic Operators) ตัวดาเนิตั วการ น การทางคณิ ต ศาสตร์ ใ นการเขี ย นโปรแกรม จะมี ก ารท างาน น ด าเนิ ความหมาย ตัวอย่าง ผลลัพธ์ เหมือนกับการใช้ทางคณิตศาสตร์ทั่วไป โดยมีตวดาเนินการต่าง ๆ ดังนี้ ั + การบวก (Addition) 10 + 4 14 10 + 4.0 14.00 10.0 + 4 10.0 + 4.0 ‘A’ + 2 67 - การลบ (Subtraction) 10 – 4 6 10.0 – 4 6.00 10 – 4.0 10.0 – 4.0
  • 8. 2. ตัวดาเนินการทางคณิตศาสตร์ (Arithmetic Operators) (ต่อ) ตัวดาเนินการ ความหมาย ตัวอย่าง ผลลัพธ์ * การคูณ (Multiply) 10 * 4 40 10 * 4.0 40.00 10.0 * 4 10.0 * 4.0 10 * -4 -40 -10 * -4 40 % การหารเอาเศษ 11%4 3 (Modulus) 4%10 4 -11%4 -3
  • 9. 2. ตัวดาเนินการทางคณิตศาสตร์ (Arithmetic Operators) (ต่อ) ตัวดาเนินการ ความหมาย ตัวอย่าง ผลลัพธ์ / การหาร (Divide) 10 / 4 2 10.0 / 4 2.50 10 / 4.0 10.0 / 4.0 -11/4 -2 11/-4 -2 -11/-4 2
  • 10. 3. ตัวดาเนินการยูนารี (Unary Operators) ตัวดาเนินการ ความหมาย รูปแบบ ตัวอย่าง การทางาน ข้อสังเกต ++ เพิ่มค่าหนึ่งค่า Postfix X = A++ X=A จะกาหนดค่าให้กับตัวแปร X ให้กับตัวแปร A=A+1 ก่อนเพิ่มค่าให้กับตัวแปร A Prefix X= ++A A=A+1 จะเพิ่มค่าให้กับตัวแปร A X=A ก่อนกาหนดค่าให้กบตัวแปร X ั -- ลดค่าลงหนึ่งค่า Postfix X = A-- X=A จะกาหนดค่าให้กับตัวแปร X ให้กับตัวแปร A=A-1 ก่อนลดค่าให้กับตัวแปร A Prefix X = --A A=A-1 จะลดค่าให้กับตัวแปร A X=A ก่อนกาหนดค่าให้กบตัวแปร X ั + บวก (plus) Prefix A = +2 ค่าตัวแปร A กรณีเป็นค่าบวกจะใส่เครื่องหมาย + หรือไม่ จะมีค่าเท่ากับ 2 ก็ ไ ด้ เพราะกรณี ไ ม่ ใ ส่ เ ครื่ อ งหมาย คอมไพเลอร์จะมองค่านั้นเป็นบวกเสมอ - ลบ (minus) Prefix A = -2 ค่าตัวแปร A เครื่องหมายลบหน้าตัวเลขแสดงถึงค่าเป็น จะมีค่าเท่า -2 จานวนลบ A = -2 A = -2 เมื่ อ ใส่ เครื่ อ งหมายลบหน้ า ตั ว แปรใด ๆ A = -A A=2 ผลลัพธ์ที่ได้จะเป็นค่าตรงกันข้าม
  • 11. 4. ตัวดาเนินการเปรียบเทียบ (Comparision Operators) เป็นตัวดาเนินการสาหรับเปรียบเทียบข้อมูลระหว่างตัวถูกกระทาทางด้านซ้ายและ ด้านขวา ผลลัพธ์ที่ได้จะมีค่าเป็นจริง (True) หรือเท็จ (False) เท่านั้น ตัวดาเนินการ ความหมาย ตัวอย่าง == เท่ากับ : เปรียบเทียบระหว่างตัวถูกกระทาด้านซ้ายกับ A = = B ด้านขวาของตัวดาเนินการ ว่ามีค่าเท่ากันหรือไม่ ถ้าเท่ากันจะ ให้ผลลัพธ์เป็นจริง ถ้าไม่เท่ากันจะให้ผลลัพธ์เป็นเท็จ != ไม่ เ ท่ า กั บ : เปรีย บเที ย บระหว่ า งตั ว ถู ก กระท าด้ า นซ้ า ยกั บ A ! = B ด้ า นขวาของตั ว ด าเนิ น การ ว่ า มี ค่ า ไม่ เ ท่ า กั น หรื อ ไม่ ถ้ า ไม่ เท่ากันจะให้ผลลัพธ์เป็นจริง ถ้าเท่ากันจะให้ผลลัพธ์เป็นเท็จ > มากกว่า : เปรียบเทียบระหว่างตัวถูกกระทาด้านซ้ายมีค่า A > B มากกว่าตัวถูกกระทาด้านขวาของตัวดาเนินการหรือไม่ ถ้า มากกว่าจะให้ผลลัพธ์เป็นจริง ถ้าน้อยกว่าจะให้ผลลัพธ์เป็นเท็จ
  • 12. 4. ตัวดาเนินการเปรียบเทียบ (Comparision Operators) (ต่อ) ตัวดาเนินการ ความหมาย ตัวอย่าง >= มากกว่าหรือเท่ากับ : เปรียบเทียบระหว่างตัวถูกกระทาด้านซ้ายมีค่า A > = B มากกว่ า หรื อ เท่ า กั บ ตั ว ถู ก กระท าด้ า นขวาของตั ว ด าเนิ น การ ถ้ า มากกว่าหรือเท่ากับจะให้ผลลัพธ์เป็นจริง ถ้าไม่ใช่จะให้ผลลัพธ์เป็นเท็จ < น้อยกว่า : เปรียบเทียบระหว่างตัวถูกกระทาด้านซ้ายมีค่าน้อยกว่าตัว A<B ถูกกระทาด้านขวาของตัวดาเนินการหรือไม่ ถ้าน้อยกว่าจะให้ผลลัพธ์ เป็นจริง ถ้ามากกว่าจะให้ผลลัพธ์เป็นเท็จ <= น้อยกว่าหรือเท่ากับ : เปรียบเทียบระหว่างตัวถูกกระทาด้านซ้ายมีค่า A <= B น้อยกว่าหรือเท่ากับตัวถูกกระทาด้านขวาของตัวดาเนินการ ถ้าน้อย กว่าหรือเท่ากับจะให้ผลลัพธ์เป็นจริง ถ้าไม่ใช่จะให้ผลลัพธ์เป็นเท็จ
  • 13. 5. ตัวดาเนินการตรรกะ (Logial Operators) ตัวดาเนินการตรรกะ (Logial Operators) เป็นตัวดาเนินการทางด้าน ตรรกศาสตร์ ใช้สาหรับกาหนดเงื่อนไขมากกว่า 1 เงื่อนไข ซึ่งผลลัพธ์ที่ได้จะมีค่า เป็นจริง(True) หรือ เท็จ(False) เท่านั้น ตัวดาเนินการ ความหมาย ตัวอย่าง && และ : ใช้กาหนดเงื่อนไขในกรณีที่ต้องการให้เงื่อนไข (A>B) && A>C) ของนิพจน์ด้านซ้ายและด้านขวาของตัวดาเนินเป็นจริง ทั้งสองด้าน จึงทางานที่ต้องการ || หรือ : ใช้กาหนดเงื่อนไขในกรณีที่ต้องการให้เงื่อนไข (A>B) || (A>C) ของนิพจน์และด้านขวาของตัวดาเนินการเป็นจริงด้าน ใดด้านหนึ่งหรือทั้งสองด้าน จึงทางานที่ต้องการ ! นิเสธ (not) : ใช้กาหนดเงื่อนไขในกรณีท่ต้องการค่า ี !(A < B) ความจริงตรงกันข้าม
  • 14. ตารางเปรียบเทียบค่าความจริงของนิพจน์ โดยกาหนดให้ p และ q เป็นตัวถูก ดาเนินการทางตรรกศาสตร์ p q p && q p || q !p !q จริง จริง จริง จริง เท็จ เท็จ จริง เท็จ เท็จ จริง เท็จ จริง เท็จ จริง เท็จ จริง จริง เท็จ เท็จ เท็จ เท็จ เท็จ จริง จริง
  • 15. 6. ตัวดาเนินการแบบมีเงือนไข (Condition Operators) ่ ตัวดาเนินการชนิดนี้ใช้สาหรับตรวจสอบเงื่อนไขของนิพจน์ ว่า มีความจริงเป็นจริง (True) หรือเท็จ (False) โดยมีรูปแบบการ ใช้งานดังนี้ Expression ? ValueTrue : ValueFalse; โดยที่ Expression คือ นิพจน์เงื่อนไข ValueTrue คือ ค่าที่ได้กรณีที่เงื่อนไขเป็นจริง ValueFalse คือ ค่าที่ได้กรณีเงื่อนไขเป็นเท็จ
  • 16. 7. ตัวดาเนินการบอกขนาดชนิดข้อมูล (Sizeof Operators) ตั ว ด าเนิ น การชนิ ด นี้ จ ะใช้ ส าหรั บ หาขนาดชนิ ด ของข้ อ มู ล ต่ า ง ๆ ที่ ต้องการรู้ โดยมีรูปแบบการใช้งานดังนี้ sizeof(Data) โดยที่ sizeof คือ ตัวดาเนินการบอกขนาดชนิดข้อมูล Data คือ ชนิดข้อมูลหรือตัวแปรที่ต้องการทราบขนาด
  • 17. 8. ตัวดาเนินการระดับบิต (Bitwse Operators) ในบางครั้งเราก็ต้องมีการประมวลผลในระดับบิต ซึ่งเป็นหน่วย ข้อมูลที่เล็กที่สุด การทางานในระดับบิตนี้จะช่วยให้ CPU ทางาน เร็วขึ้น เพราะว่า CPU ประมวลผลที่ชนิดข้อมูลที่เป็นบิตเท่านั้น ซึ่งถ้าเป็นข้อมูลชนิดอื่น ๆ จะต้องแปลงข้อมูลให้เป็นบิตก่อน บันทึก บิต (Bit) เป็นหน่วยข้อมูลที่เล็กที่สุด โดยข้อมูลหนึ่งบิตจะมี สถานะได้ 2 สถานะ คือ 0 (ปิด) หรือ 1 (เปิด) หรือเรียกอีก อย่างว่า เลขฐานสอง
  • 18. ตารางแสดงผลการทางานของตัวดาเนินการระดับบิต โดยกาหนดให้ p และ q เป็นตัวถูกดาเนินการระหว่างบิต p q (Bitwise AND) (Bitwise OR) (Bitwise XOR) p&q p|q p^q 0 0 0 0 0 0 1 0 1 1 1 0 0 1 1 1 1 1 1 0 • p & q หมายถึงให้ผลลัพธ์การเปรียบเทียบแบบ AND ระหว่าง p กับ q • p | q หมายถึงให้ผลลัพธ์การเปรียบเทียบแบบ OR ระหว่าง p กับ q • p ^ q หมายถึงให้ผลลัพธ์การเปรียบเทียบแบบ XOR ระหว่าง p กับ q
  • 19. Bitwise Shift Left Bitwise Shift Left (<<) เป็นตัวดาเนินการสาหรับเลื่อนค่าบิต ไปทางซ้าย โดยมีหลักการทางาน ดังนี้ กาหนดให้ X เป็นตัวถูกดาเนินการ (อยู่ในรูปแบบเลขฐานสอง) และ Y เป็นจานวนการ Shift โดยที่ X << Y หมายถึง เลื่อนบิต ในตัวถูกดาเนินการ X ไปทางซ้าย Y บิต ผลลัพธ์ที่ได้จากการ Shift Left จะได้เท่ากบผลคูณของ X กับ 2Y 1 1 0 1 … 1 0 1 0 1 1 0 1 0 … 0 1 0 0 บิตซ้ายมือสุดตัดทิ้ง บิตขวามือสุดเติม 0
  • 20. Bitwise Shift Right Bitwise Shift Right (>>) เป็นตัวดาเนินการสาหรับเลื่อนค่าบิต ไปทางขวา โดยมีหลักการทางาน ดังนี้ กาหนดให้ X เป็นตัวถูกดาเนินการ (อยู่ในรูปแบบเลขฐานสอง) และ Y เป็นจานวนการ Shift โดยที่ X >> Y หมายถึง เลื่อนบิต ในตัวถูกดาเนินการ X ไปทางขวา Y บิต ผลลัพธ์ที่ได้จากการ Shift Right จะได้เท่ากับผลหารของ X กับ 2Y 1 1 0 1 … 1 0 1 0 0 0 1 0 … 0 1 0 1 0 บิตซ้ายมือสุดเติม 0 บิตขวามือตัดทิ้ง
  • 21. One’s Complement () One’s Complement () เป็นตัวดาเนินการสาหรับปรับค่าของบิต เป็นค่าตรงกันข้าม กล่าวคือปรบค่าบิต 1 เปลี่ยนเป็นค่าบิต 0 และ ปรับค่าบิต 0 เปลี่ยนเป็นค่าบิต 1 ซึ่งเราสามารถสรุปได้ดังตาราง ดังนี้ ค่าบิตเริ่มต้น (P) ผลจากการทา One’s Complement (P) 1 0 0 1
  • 22. ลาดับความสาคัญของตัวดาเนินการ (Operator of Precedence) ในการทางานของตัวดาเนินการ (Operator) แต่ ละตัวนั้น ลาดับการทางานจะขึ้นอยู่กับลาดับความสาคัญ (Precedence) ของตัวดาเนินการนั้น ๆ ด้วย การทางาน จะเริ่มจากลาดับความสาคัญสูงไปยังต่า *จากตารางที่จะแสดงต่อไปนั้น ลาดับความสาคัญที่ 1 จะ มีความสาคัญสูงสุด และลาดับความสาคัญที่ 18 จะมี ความสาคัญต่าสุด
  • 23. ตารางแสดงลาดับความสาคัญของตัวดาเนินการ การทางานเริ่ม ลาดับ ตัวดาเนินการ ความหมาย จาก ความสาคัญ (Associativity) 1 () วงเล็บ (Identifier) ไม่ได้กาหนด (N/A) 2 () ฟังก์ชัน (Function) ซ้ายไปขวา [] อาร์เรย์ (Array) (Left) Structure Selection Structure Member
  • 24. ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ) ลาดับ การทางานเริ่มจาก ตัวดาเนินการ ความหมาย ความสาคัญ (Associativity) 3 ++ เพิ่มค่าขึ้นอีกหนึ่งค่า โดยตัว ซ้ายไปขวา ด าเนิ น การอยู่ ห ลังตัวถู ก (Left) กระทา (Postfix Increment) -- ลดค่ า ลงอี ก หนึ่ ง ค่ า โดยตั ว ด าเนิ น การอยู่ ห ลังตัวถู ก กระทา (Postfix Decrement)
  • 25. ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ) การทางานเริ่ม ลาดับ ตัวดาเนินการ ความหมาย จาก ความสาคัญ (Associativity) 4 ++ เพิ่ ม ค่ า ขึ้ น อี ก หนึ่ ง ค่ า โดยตั ว ขวาไปซ้าย ด าเนิ น ก าร อยู่ ห น้ าตั ว ถู ก (Left) กระทา (Prefix Increment) -- ลดค่ า ลงอี ก หนึ่ ง ค่ า โดยตั ว ด าเนิ น ก าร อยู่ ห น้ าตั ว ถู ก กระทา (Prefix Decrement)
  • 26. ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ) ลาดับ การทางานเริ่มจาก ตัวดาเนินการ ความหมาย ความสาคัญ (Associativity) 4 sizeof หาขนาดชนิดข้อมูล ซ้ายไปขวา (ต่อ) (Size of Object in byte) (Left) + บวก (plus) - ลบ (minus) ! ตรรกะนิเสธ (not) & ชี้ ที่ อ ยู่ ใ น ห น่ ว ย ค ว า ม จ า (Address)
  • 27. ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ) ลาดับ การทางานเริ่มจาก ตัวดาเนินการ ความหมาย ความสาคัญ (Associativity) 4 * ตัวชีพอยเตอร์ (Indirection) ้ ซ้ายไปขวา (ต่อ)  วันคอมพลีเมนต์ (Left) (One’s Complement) 5 () แปลงค่าชนิดข้อมูล 6 * คูณ (Multiply) ซ้ายไปขวา / หาร (Divide) % หารเอาเศษ (Modulus)
  • 28. ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ) ลาดับ การทางานเริ่มจาก ตัวดาเนินการ ความหมาย ความสาคัญ (Associativity) 7 + บวกเพิ่มค่า (Addition) ซ้ายไปขวา - ลบลดค่า (Subtraction) 8 << เลื่อนบิตไปทางซ้าย (Bit Left) >> เลื่อนบิตไปทางขวา (Bit Right) 9 > เปรียบเทียบมากกว่า < เปรียบเทียบน้อยกว่า
  • 29. ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ) ลาดับ การทางานเริ่มจาก ตัวดาเนินการ ความหมาย ความสาคัญ (Associativity) 9 >= เปรียบเทียบมากกว่าเท่ากับ ซ้ายไปขวา (ต่อ) <= เปรียบเทียบน้อยกว่าเท่ากับ 10 == เปรียบเทียบเท่ากับ != เปรียบเทียบไม่เท่ากับ 11 & การกระทาบิต AND (bitwise AND) 12 ^ การกระทาบิต XOR (bitwise exclusive OR)
  • 30. ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ) ลาดับ การทางานเริ่มจาก ตัวดาเนินการ ความหมาย ความสาคัญ (Associativity) 13 l การกระทาบิต OR (bitwise OR) ซ้ายไปขวา 14 && ตรรกะ AND (Logical AND) 15 Ll ตรรกะ OR (Logical OR) 16 ?: เงื่อนไข (Conditional) ขวาไปซ้าย 17 = += -= กาหนดค่าให้ตัวถูกกระทา *= /= %= (Assignment) >>= <<= กาหนดค่าระดับบิต &= ^= l= (Bit Assignment)
  • 31. ตารางแสดงลาดับความสาคัญของตัวดาเนินการ (ต่อ) ลาดับ การทางานเริ่มจาก ตัวดาเนินการ ความหมาย ความสาคัญ (Associativity) 18 , คอมมา (Comma) ซ้ายไปขวา
  • 32. ที่มา : คู่มืออบรมครูวิทยาศาสตร์ คณิตศาสตร์ คอมพิวเตอร์ โลก ดาราศาสตร์ และอวกาศ ระดับมัธยมศึกษาตอนปลาย หนังสือเรียนรายวิชาเพิ่มเติม การเขียนโปรแกรมเบื้องต้นด้วยภาษา C บริษทซัคเซสมีเดีย คู่มือเรียนเขียนโปรแกรมภาษา สานักพิมพ์ IDC PREMIER