728x90
연산자
사칙연산
- 나누기를 제외하고 python과 같다.
연산자 의미 + 더하기 - 빼기 * 곱하기 / 나누기 - 정수끼리 나눌 시 몫 반환 % 나누기 - 나머지 반환, 피연산자는 반드시 정수형
대입 연산자(=)
- 대입할 때 좌변과 우변의 타입이 다를 경우 좌변의 변수 타입에 맞춰 대입
복합 대입 연산자
- 자기 자신에 어떤 연산을 할 때 연산자를 줄여 쓸 수 있음
복합 연산자 | 의미 |
---|---|
a += n | a = a + n |
a -= n | a = a - n |
a *= n | a = a * n |
a /= n | a = a / n |
a %= n | a = a % n |
다른 타입 간 연산
- 컴파일러는 기본형 타입 간 연산시 서로 다른 타입이 맞지 않으면 자동으로 타입을 바꿈(implicit type conversion)
- 변환 과정을 정확히 모르면 경고를 발생시키지 않기 때문에 의도한대로 프로그램이 작동하지 않을 수 있음
- 큰 메모리를 사용하는 data type으로 변경됨
Cast 연산자
- 명시적으로 type을 변경해주는 것 (explicit conversion)
- 변수 앞에
()
로 type을 변경 - 앞의 예와 달리 명시적으로 타입을 변경해 프로그래머가 인지하고 있다는 점을 표시
증감 연산자 (++, --)
- prefix와 postfix 경우에 결과가 다름, 연산 순서와 실행 순서 불일치함
- prefix는 해당 라인에서 1 증가 시킨 후 실행
- postfix는 해당 라인을 실행시킨 후 증가시킴
조건 연산자
if ... else ...
는 문장이고, 조건 연산자는 식이기 때문에 편리한 점이 있음D = (A)? B: C
와 같이 A 조건에 따라 D에 B 또는 C값을 할당할 수 있음
'프로그래밍 언어 > C' 카테고리의 다른 글
[C++] pair class 사용법 (0) | 2022.09.18 |
---|---|
함수 (0) | 2022.07.30 |
printf와 scanf (0) | 2022.07.30 |
C 언어에서 수 체계와 변수 (0) | 2022.07.30 |