Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# 증가(++) 및 감소(--) 연산자 완벽 가이드

개요

C#에서 증가 연산자(++)는 정수 값을 1만큼 늘리고, 감소 연산자(--)는 정수 값을 1만큼 줄이는 단항 연산자입니다. 이 두 연산자는 반복문이나 카운터를 처리할 때 매우 자주 사용되며, 변수 앞에 붙느냐 뒤에 붙느냐에 따라 동작 순서가 달라진다는 점이 핵심입니다.

int a = 10;
a++;   // 후위 증가: a는 11이 됨
++a;   // 전위 증가: a는 12가 됨
int a = 20;
a--;   // 후위 감소: a는 19가 됨
--a;   // 전위 감소: a는 18이 됨

전위 연산과 후위 연산의 차이

증가·감소 연산자는 위치에 따라 다음과 같이 동작합니다.

  • 전위(Prefix) 방식 — ++a, --a: 값을 먼저 증가(또는 감소)시킨 후 그 결과를 반환합니다.
  • 후위(Postfix) 방식 — a++, a--: 현재 값을 먼저 반환한 뒤에 값을 증가(또는 감소)시킵니다.

증가 연산자 예제

다음은 증가 연산자의 동작을 보여주는 C# 예제입니다.

using System;

class Program {
   static void Main() {
      int a, b;

      a = 10;
      Console.WriteLine(++a);  // 전위 증가: 먼저 11로 증가 후 11 출력
      Console.WriteLine(a++);  // 후위 증가: 현재 값 11 출력 후 a는 12로 증가

      b = a;                   // b에 12 대입
      Console.WriteLine(a);    // 12 출력
      Console.WriteLine(b);    // 12 출력
   }
}

출력 결과

11
11
12
12

++a는 값을 먼저 1 증가시킨 뒤 출력하므로 11이 출력됩니다. 반면 a++는 현재 값인 11을 출력한 후에야 a가 12로 증가합니다. 따라서 마지막에 변수 a와 b는 모두 12를 갖게 됩니다.

감소 연산자 예제

다음은 감소 연산자의 동작을 확인할 수 있는 예제입니다.

int a, b;
a = 10;

// 감소 연산자 결과 출력
Console.WriteLine(--a);  // 전위 감소: 먼저 9로 감소 후 9 출력
Console.WriteLine(a--);  // 후위 감소: 현재 값 9 출력 후 a는 8로 감소

b = a;                   // b에 8 대입
Console.WriteLine(a);    // 8 출력
Console.WriteLine(b);    // 8 출력

정리

증가(++)와 감소(--) 연산자는 문법이 단순하지만, 전위와 후위 방식에 따라 값이 반환되는 시점이 달라집니다. 특히 다른 표현식 안에서 함께 사용할 경우 의도하지 않은 결과가 나올 수 있으므로, 두 방식의 동작 차이를 정확히 이해하고 사용하는 것이 좋습니다.