Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

พฤติกรรมของโอเปอเรเตอร์ก่อนและหลังการเพิ่มใน C, C++, Java และ C#


ตัวดำเนินการทั้งสองส่วนล่วงหน้าและส่วนเพิ่มหลังถูกใช้เป็นการดำเนินการส่วนเพิ่ม ตัวดำเนินการ pre increment ใช้เพื่อเพิ่มค่าของตัวแปรบางตัวก่อนที่จะใช้ในนิพจน์ ในการเพิ่มค่าล่วงหน้า ค่าจะเพิ่มขึ้นในตอนแรก จากนั้นจึงใช้ภายในนิพจน์

ถ้านิพจน์คือ a =++b; และ b ถือ 5 ในตอนแรก จากนั้น a จะถือ 6 เพราะเพิ่ม b ขึ้น 1 แล้วตั้งค่า a ด้วย

โค้ดตัวอย่าง

#include ใช้เนมสเปซ std;main () { int a, b =15; ก =++ข; ศาล < 

ผลลัพธ์

16

โค้ดตัวอย่าง

#include main () { int a, b =15; ก =++ข; printf(“%d”, a);}

ผลลัพธ์

16

โค้ดตัวอย่าง

<ก่อนหน้า>คลาสสาธารณะ IncDec { โมฆะคงที่สาธารณะหลัก (สตริง [] args) { int a, b =15; ก =++ข; System.out.println(“” + ก); }}

ผลลัพธ์

16

โค้ดตัวอย่าง

ใช้ System;namespace IncDec { class Inc { static void Main() { int a, b =15; ก =++ข; Console.WriteLine(""+a); } }}

ผลลัพธ์

16

ตัวดำเนินการหลังการเพิ่มจะใช้เพื่อเพิ่มค่าของตัวแปรบางตัวหลังจากใช้ในนิพจน์ ในการโพสต์ ค่าจะถูกใช้ภายในนิพจน์ แล้วเพิ่มขึ้นทีละหนึ่ง

ถ้านิพจน์เป็น a =b++; และ b ถือ 5 ในตอนแรก จากนั้น a ก็จะถือ 5 ด้วย เพราะเพิ่ม b ขึ้น 1 หลังจากกำหนดให้เป็น a

โค้ดตัวอย่าง

#include ใช้เนมสเปซ std;main () { int a, b =15; a =b++; ศาล < 

ผลลัพธ์

1516

โค้ดตัวอย่าง

#include main () { int a, b =15; ก =++ข; printf(“%d”, ก); printf(“%d”, b);}

ผลลัพธ์

1516

โค้ดตัวอย่าง

<ก่อนหน้า>คลาสสาธารณะ IncDec { โมฆะคงที่สาธารณะหลัก (สตริง [] args) { int a, b =15; ก =++ข; System.out.println(“” + ก); System.out.println(“” + b); }}

ผลลัพธ์

1516

โค้ดตัวอย่าง

ใช้ System;namespace IncDec { class Inc { static void Main() { int a, b =15; ก =++ข; Console.WriteLine(""+a); Console.WriteLine(""+b); } }}

ผลลัพธ์

1516