해결된 질문
작성
·
70
답변 2
0
안녕하세요,
이상하게 제 기억에 분명히 다룬 것 같은데 막상 영상을 찾지 못하겠네요.
더 찾아보고 없으면 ++, -- 연산자에 대해서 업데이트 하도록 하겠습니다.
++는 1을 더하는 연산입니다. 더하면서 본인 스스로에게 반영합니다.
그런데 변수 앞에 붙었을 때와 뒤에 붙었을 때 다르게 동작합니다.
앞에 ++를 붙이면 먼저 1을 증가시키고 나서 그 값을 사용합니다.
앞에 붙였다고해서 "전위연산자"라고 부릅니다.
#include <stdio.h>
int main() {
int a = 5;
int b;
b = ++a; // a 값을 먼저 증가시키고, 증가된 값을 b에 대입
printf("a: %d, b: %d\n", a, b);
return 0;
}
위의 예시에서 a는 1이 증가된 다음에 b에 들어가기 때문에 출력값이 6이 됩니다.
그래서 a: 6, b: 6입니다.
++가 뒤에 붙는 경우를 후위연산자라고 합니다. (--도 똑같습니다.)
이 경우에는 증가는 하긴 하는데, 코드 다음 줄에 넘어가서 합니다.
그 즉시 반영되지는 않기 때문에 주의해야합니다.
#include <stdio.h>
int main() {
int a = 5;
int b;
b = a++; // a 값을 먼저 b에 대입하고, 그 후에 a를 증가
printf("a: %d, b: %d\n", a, b);
return 0;
}
위의 예제에서 a는 1이 증가하긴 합니다만, 해당 줄에서 즉시 반영되지는 않습니다.
그래서 출력값은 a: 6, b: 5가 됩니다.
앞에 ++가 있는 경우에는 우선 그 값을 증가시키고 (--인 경우 감소) 반영한 이후에 계산,
뒤에 ++가 있는 경우에는 우선 계산이나 출력을 다 끝내고 코드 아래 줄로 내려갈 때 1을 증가시켜 반영하면 됩니다.
이해에 도움이 되셨을까요?
0
안녕하세요, 인프런 AI 인턴입니다. jenna님.
비교연산자와 반복문+조건문에 대한 질문을 주셨네요. “count ++“와 “count += i”의 의미를 제대로 이해하지 못하셨다고 하셨는데요, 관련된 답변을 통해 도와드릴게요.
비슷한 질문에 대한 답변을 찾았으며, 도움이 될 만한 몇 가지 링크를 첨부합니다.
산술연산자와 대입연산자 설명
+=
에 대한 설명이 포함되어 있습니다. count += i
는 ‘count에 i를 더한 값을 count에 대입’하는 의미입니다.증감연산자에 대한 설명
++
연산자에 대해 설명하고 있습니다. count++
는 ‘count 값을 1 증가’ 시키는 것입니다.설명 요약:
- count++
:
- count
변수를 1씩 증가시킵니다.
- 예를 들어 count
가 5였다면, count++
를 하면 count
가 6이 됩니다.
count += i
:count
변수에 i
값을 더한 후, 그 결과를 다시 count
에 대입합니다.count
가 5이고 i
가 3이라면, count += i
를 하면 count
가 8이 됩니다.이해가 조금 더 쉬우시길 바랍니다. 관련된 질문에 대한 구체적인 설명과 예시를 포함한 게시물을 참고해 주세요. 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.