연산자 주변 띄어쓰기

2026. 1. 10.컴퓨터/간단지식

프로그래밍을 처음 배울 때 1+2 대신 1 + 2 같이 연산자 앞뒤로 한 칸씩 띄어 쓰는 모습이 눈에 들어왔었다. 분명 앞뒤 공백 없이도 오류 안 나고 잘 실행된다. 그러나 대부분의 사람이 이 의미 없어 보이는 공백을 사용한다. 현재 나 또한 연산자 앞뒤로 꼬박꼬박 띄어 쓰고 있으며 그렇지 않은 코드를 보면 괜히 불편한 마음이 든다. 도대체 사람들은 뭐가 좋길래 2바이트씩 낭비해 가며 띄어 쓰고 있는지 알아보자.

 

가독성

뭐니 뭐니 해도 가장 큰 이유는 가독성일 것이다. 사실 프로그래밍을 처음 배울 때는 짧은 변수명과 간단한 구문을 주로 다루다 보니 크게 안 와닿을 수 있다. 가령, a=b-c 같이 간단한 코드는 연산자 주변에 공백이 없어도 쉽게 읽힌다. 그렇다면 아래 2줄의 코드를 보자.

free_size=total_array_capacity-current_index
free_size = total_array_capacity - current_index

변수 이름이 길어졌을 뿐인데 공백 없는 첫 번째 줄은 읽기 다소 불편하다. 반면, 두 번째 줄은 연산자 주변 공백 덕에 각각의 변수를 편하게 구별해낼 수 있다. 변수 이름이 길어지지 않더라도, 다양한 기호들이 섞이고 복잡한 상황에서 적절한 공백은 가독성 향상에 꽤 도움을 준다.

 

문법적 이유

대부분은 연산자 주변의 공백이 있든 없든 문법적으로 문제없이 잘 돌아가지만, 일부 언어나 기능을 사용할 때 연산자 앞뒤로 공백을 제대로 사용하지 않으면 오류가 날 수 있다. 대표적으로 Zig 언어의 경우 이항 연산자 앞뒤로 한쪽만 공백이 있으면 오류가 나기에 앞뒤 모두 공백을 두거나 아예 두지 않는 것이 강제된다. 예를 들어, a+ b같이 쓰면 오류가 난다(대부분의 언어는 이렇게 써도 괜찮다). 연산자처럼 쓸 수 있는 함수인 중위 함수(infix function)를 Kotlin이나 Scala처럼 지원한다면 a plus b 같은 표현이 가능하다. 중위 함수를 사용하는데 앞뒤로 공백을 두지 않으면 aplusb처럼 값과 구별이 불가능하기에 앞뒤로 공백이 필수이다.

 

예외

일반적으로 연산자 앞뒤로 띄어 쓰지만, 항상 그런 것은 아닌 게 코딩 스타일에 따라 연산자를 쓸 때 주변에 공백을 사용하지 않기도 한다. 대표적으로 수식을 대괄호 안에 인덱스로 사용하는 경우, a[i + 1] 대신 a[i+1]처럼 사용하기도 한다. 2*7 + 6/3 같이 우선순위가 다른 연산자가 섞여 있을 때, 상대적으로 높은 우선순위의 연산자 주변을 공백 없이 붙여쓰기도 한다. 함수의 기본값이나 인자를 직접 지정할 때 사용하는 =의 경우, foo(x=4) 같이 오히려 공백을 없는걸 권장하는 등 상황에 따라 달라질 수 있다.

 

기타

위에서 다룬 내용은 이항 연산자에 관한 내용이었다. -a, b++, !c 같은 단항 연산자를 사용한다면 공백을 두지 않는 게 일반적이다(다만, sizeof 같은 단항 연산자는 sizeof a 또는 sizeof(a)처럼 공백이나 괄호를 사용해야한다). 삼항 연산자는 a ? b : c 형태로 이항 연산자와 같이 공백을 두는 것이 일반적이다.

 

연산자를 쓸 때마다 띄어쓰기를 일일이 하는 것이 귀찮을 수 있다. 만약 자동 포맷터를 사용할 수 있다면 손수 띄어 쓸 필요 없이 자동으로 보기 좋게 정리해 주니 사용해 보자.

 

마무리

이번 글에선 코딩에 입문한 사람들 입장에서 제일 어색할 만한 연산자 주변의 공백을 다뤘지만, 이 외에도 보기 좋은 코드를 위해 코딩 컨벤션이라 부르는 다양한 규칙들이 존재한다. 이런 규칙을 준수하면 누군가 내 코드를 볼 때 피로함을 조금이나마 줄일 수 있지 않을까?

'컴퓨터 > 간단지식' 카테고리의 다른 글

아스키 코드표 — ASCII Table  (0) 2026.01.08
'컴퓨터/간단지식' 카테고리의 다른 글
  • 아스키 코드표 — ASCII Table
wodeul
wodeul
wodeul is wonderful
  • wodeul
    wodeul is wonderful
    wodeul
  • 전체
    오늘
    어제
    • 분류 전체보기 (3) N
      • 컴퓨터 (3) N
        • 문제해결 (1) N
        • 간단지식 (2)
      • 수과학 (0)
      • 일상 (0)
  • 블로그 메뉴

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

  • 공지사항

  • 인기 글

  • 태그

    아스키 코드표 PDF
    연산자 주변 공백
    ASCII Table PDF
    ASCII Table Vector
    아스키 코드표 벡터
    SvelteKit SSG
    Ascii Table
    연산자 앞뒤 띄어쓰기
    SvelteKit 정적 사이트
    아스키 코드표
    SvelteKit 빌드
    연산자 앞뒤 공백
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.5
wodeul
연산자 주변 띄어쓰기
상단으로

티스토리툴바