[C언어] 산술 연산자

2025. 6. 14. 22:46·개발이야기/C언어
728x90

 

C 언어에서 산술 연산자는 숫자 타입 간의 연산을 수행하며, 결과의 타입은 피연산자에 따라 결정됩니다. 특히 서로 다른 타입의 피연산자가 연산에 사용될 때는 자동 형 변환(type promotion) 이 일어나게 됩니다.


산술 연산자의 기본 동작

1. 연산자의 결과 타입

  • int + int → 결과도 int
  • int + float → int가 float으로 변환되고, 결과는 float
int a = 3;
float b = 2.5;
float result = a + b;  // a는 float으로 변환되어 result는 5.5

2. 주요 산술 연산자

연산자설명

+ 덧셈
- 뺄셈
* 곱셈
/ 나눗셈
% 나머지(정수형 전용)

할당과 업데이트 연산자

단순 할당

x = 3 + 4;  // x에 7이 저장됨

업데이트가 포함된 할당

x += 3;  // x = x + 3;
x *= 2;  // x = x * 2;

증분(++)과 감소(--) 연산자

이 연산자는 변수의 값을 1 증가 또는 감소시킬 때 사용합니다.

x++; // x = x + 1;
x--; // x = x - 1;

이때 가장 많이 헷갈리는 개념이 사전증분(prefix) 과 사후증분(postfix) 입니다.


사전증분 (++x) vs 사후증분 (x++)

구분 설명 실행 순서
사전증분 값을 먼저 1 증가시킨 후, 그 값을 사용함 증가 → 사용
사후증분 현재 값을 먼저 사용한 후, 나중에 1 증가시킴 사용 → 증가

예제 코드

#include <stdio.h>

int main() {
    int x = 5;
    int a = ++x; // 사전증분: x는 6으로 증가하고, a도 6
    int b = x++; // 사후증분: b는 6, 그 다음 x는 7

    printf("a: %d\n", a); // 6
    printf("b: %d\n", b); // 6
    printf("x: %d\n", x); // 7
    return 0;
}

요약 정리

  • 산술 연산 시 타입이 다르면 자동 형 변환이 발생
  • +=, -=, *=, /=, %= 는 축약 표현으로 코드 간결화
  • ++, -- 는 사전(prefix) 과 사후(postfix) 개념 주의
  • 사전증분: 먼저 증가 → 값 사용 / 사후증분: 값 사용 → 나중에 증가

728x90

'개발이야기 > C언어' 카테고리의 다른 글

[C언어] 조건문과 반복문  (0) 2025.06.14
[C언어] 언어 표준 입출력 함수  (1) 2025.06.14
[C언어] 변수와 데이터타입  (0) 2025.06.14
VS Code에서 C 언어 스니펫 설정하는 방법 (Windows 기준)  (0) 2025.06.14
Windows에서 VS Code + MinGW로 C언어 개발 환경 설정하기  (0) 2025.06.14
'개발이야기/C언어' 카테고리의 다른 글
  • [C언어] 조건문과 반복문
  • [C언어] 언어 표준 입출력 함수
  • [C언어] 변수와 데이터타입
  • VS Code에서 C 언어 스니펫 설정하는 방법 (Windows 기준)
Study & Stack
Study & Stack
하루하루 공부하며 개발 지식을 쌓아가는 공간입니다. 자료구조, 알고리즘, C언어, 시스템 프로그래밍까지 공부한 내용을 ‘Stack’처럼 쌓고 공유합니다.
  • Study & Stack
    Study & Stack
    Study & Stack
  • 전체
    오늘
    어제
    • 목차
      • 크래프톤정글이야기
        • 정글의기록
        • TIL - WIL
      • 개발이야기
        • C언어
        • 파이썬
        • 코딩테스트
        • CSAPP
      • 협업툴
        • git
      • 나의 이야기
        • 내돈내산
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
Study & Stack
[C언어] 산술 연산자
상단으로

티스토리툴바