이 상세 가이드에서는 C 프로그래밍의 연산자와 해당 유형에 대해 설명합니다.
C 프로그래밍의 연산자 및 유형
연산자는 특정 수학적 작업을 수행하는 데 사용되는 기호입니다. 데이터와 변수를 조작하는 데 사용됩니다. 다음은 C 프로그래밍의 다양한 유형의 연산자입니다.
1: 산술 연산자
더하기, 빼기 또는 곱하기와 같은 기본적인 수학 함수를 수행하는 데 사용되는 연산자입니다. C 프로그래밍의 거의 모든 내장 데이터 유형에서 이러한 연산자를 사용할 수 있습니다. 다음은 C 프로그래밍에서 사용되는 산술 연산자입니다.
연산자 | 기능 |
+ | 피연산자 2개 추가 |
– | 피연산자 2개 빼기 |
* | 피연산자 2개 곱하기 |
/ | 피연산자 2개 나누기 |
% | 나머지 연산자는 나눗셈의 나머지를 제공합니다. |
예
아래 예에서는 변수 X와 변수 Y에 대해 위에서 언급한 산술 연산을 수행했습니다. 변수 X는 값 20을 보유하고 Y는 값 5를 보유합니다.
#include
정수 기본 ( )
{
정수 엑스 = 이십 ;
정수 그리고 = 5 ;
정수 결과 ;
결과 = 엑스 + 그리고 ;
printf ( 'X와 Y의 더하기: %d \N ' , 결과 ) ;
결과 = 엑스 - 그리고 ;
printf ( 'X와 Y의 빼기: %d \N ' , 결과 ) ;
결과 = 엑스 * 그리고 ;
printf ( 'X와 Y의 곱셈: %d \N ' , 결과 ) ;
결과 = 엑스 / 그리고 ;
printf ( 'X와 Y의 나눗셈: %d \N ' , 결과 ) ;
결과 = 엑스 % 그리고 ;
printf ( 'X와 Y의 계수 나누기: %d \N ' , 결과 ) ;
반품 0 ;
}
2: 단항 연산자
C 언어, 증가 ++ 및 감소 — 연산자에서만 지원되는 두 가지 고유한 단항 연산자가 있습니다. 증가 연산자는 피연산자에 1을 더하고 감소 연산자는 피연산자에서 1을 뺍니다.
증분 연산자는 다음과 같이 작성됩니다.
++ 또는 ++
감소 연산자는 다음과 같습니다.
-- 또는 --증가 및 감소 연산자를 접두사로 사용하면 먼저 변수 값을 더하거나 뺀 다음 결과가 왼쪽 변수에 할당됩니다. 연산자가 이전에 추가된 경우 먼저 원래 값을 반환한 다음 피연산자에 1을 더하거나 뺍니다.
예
아래에서 두 변수 a와 b에 값을 할당하고 증가 및 감소 연산자를 적용했습니다.
#include정수 기본 ( )
{
정수 ㅏ = 열 다섯 , 비 = 10 ;
printf ( '++a = %d \N ' , ++ ㅏ ) ;
printf ( 'a++ = %d \N ' , ㅏ ++ ) ;
반품 0 ;
}
3: 할당 연산자
안 대입 연산자(=) 프로그램에서 변수에 값을 할당하는 데 사용됩니다. 다음은 언급된 할당 연산자입니다.
연산자 | 기능 |
= | 피연산자에 값 할당 |
+= | 오른쪽에 있는 피연산자의 값을 왼쪽 피연산자에 더합니다. |
-= | 왼쪽 피연산자에서 오른쪽 피연산자의 값을 뺍니다. |
*= | 오른쪽 피연산자의 값을 왼쪽 피연산자에 곱하기 |
/= | 오른쪽 피연산자의 값을 왼쪽 피연산자로 나눕니다. |
%= | 두 값의 모듈러스를 가져와 왼쪽 피연산자에 값을 할당합니다. |
예
아래 예에서 두 피연산자 X와 Y에 대한 할당 연산자의 작업을 보여주었습니다.
#include정수 기본 ( )
{
정수 엑스 = 10 ;
정수 결과 ;
결과 = 엑스 ;
printf ( '결과 값 = %d \N ' , 결과 ) ;
결과 += 엑스 ;
printf ( '결과 값 = %d \N ' , 결과 ) ;
결과 -= 엑스 ;
printf ( '결과 값 = %d \N ' , 결과 ) ;
결과 *= 엑스 ;
printf ( '결과 값 = %d \N ' , 결과 ) ;
결과 /= 엑스 ;
printf ( '결과 값 = %d \N ' , 결과 ) ;
반품 0 ;
}
4: 관계 연산자
관계 연산자는 C 프로그래밍에서 두 변수 간의 관계를 확인하는 데 사용됩니다. 항목의 가격이나 두 사람의 나이를 비교하는 데 사용할 수 있습니다. 다음은 C 프로그래밍에서 사용되는 관계 연산자입니다.
연산자 | 기능 |
== | 동일 |
> | 보다 큰 |
< | 미만 |
>= | 보다 큼 |
<= | 보다 작음 |
!= | 같지 않음 |
예
아래 예제는 C 프로그래밍에서 관계 연산자의 작업을 보여줍니다.
#include정수 기본 ( )
{
정수 ㅏ = 9 ;
정수 비 = 10 ;
printf ( '%d == %d는 %d입니다. \N ' , ㅏ , 비 , ㅏ == 비 ) ;
printf ( '%d > %d는 %d입니다. \N ' , ㅏ , 비 , ㅏ > 비 ) ;
printf ( '%d < %d는 %d입니다. \N ' , ㅏ , 비 , ㅏ < 비 ) ;
printf ( '%d != %d는 %d입니다. \N ' , ㅏ , 비 , ㅏ != 비 ) ;
printf ( '%d >= %d는 %d입니다. \N ' , ㅏ , 비 , ㅏ >= 비 ) ;
printf ( '%d <= %d는 %d입니다. \N ' , ㅏ , 비 , ㅏ <= 비 ) ;
반품 0 ;
}
5: 논리 연산자
C 언어에서 지원하는 네 가지 논리 연산자가 있습니다.
연산자 | 기능 |
논리 AND(&&) | 모든 조건을 만족하는 경우에만 True |
논리적 OR(||) | 하나의 조건만 만족하면 결과는 true |
논리적 NOT(!) | 피연산자가 0이면 결과는 참 |
비트별 NOT(~). | 피연산자의 모든 비트를 반전 |
예
아래 예제 코드는 C에서 논리 연산자의 작동을 설명합니다.
#include정수 기본 ( )
{
정수 엑스 = 10 , 그리고 = 4 , 와 함께 = 10 , 결과 ;
결과 = ( 엑스 == 그리고 ) && ( 와 함께 > 그리고 ) ;
printf ( '(X == Y) && (Z > Y)는 %d입니다. \N ' , 결과 ) ;
결과 = ( 엑스 == 그리고 ) && ( 와 함께 < 그리고 ) ;
printf ( '(X == Y) && (Z < Y)는 %d입니다. \N ' , 결과 ) ;
결과 = ( 엑스 == 그리고 ) || ( 와 함께 < 그리고 ) ;
printf ( '(X == Y) || (Z < Y)는 %d입니다. \N ' , 결과 ) ;
결과 = ( 엑스 != 그리고 ) || ( 와 함께 < 그리고 ) ;
printf ( '(X != Y) || (Z < Y)는 %d입니다. \N ' , 결과 ) ;
결과 = ! ( 엑스 != 그리고 ) ;
printf ( '!(X != Y)는 %d입니다. \N ' , 결과 ) ;
결과 = ! ( 엑스 == 그리고 ) ;
printf ( '!(X == Y)는 %d입니다. \N ' , 결과 ) ;
결과 = ! ( 엑스 > 그리고 ) ;
printf ( '!(X > Y)는 %d입니다. \N ' , 결과 ) ;
반품 0 ;
}
6: 조건 연산자
C의 조건 연산자는 삼항 연산자 3개의 피연산자(조건, 명령문 1 및 명령문 2)를 사용하기 때문입니다. 조건을 평가하고 주어진 조건의 결과에 따라 true 또는 false일 수 있는 명령문 1 또는 명령문 2를 반환합니다.
상태 ? 성명 1 : 성명 2- 상태: 참인지 거짓인지 확인하는 부울 식입니다.
- 진술 1: 조건이 참일 경우 평가되는 표현식입니다.
- 진술 2: 조건이 false인 경우 평가되는 표현식입니다.
예
아래 예에서는 숫자에 값을 할당한 다음 조건을 적용했습니다. 조건이 참이면 명령문 1이 출력이 되고 조건이 거짓이면 명령문 2가 출력이 됩니다.
#include정수 기본 ( )
{
정수 숫자 = 10 ;
( 숫자 < 이십 ) ? ( printf ( '20번보다 적다!' ) ) : ( printf ( '20보다 크다!' ) ) ;
반품 0 ;
}
7: 비트 연산자
비트 연산자 C에서는 비트 수준에서 데이터를 조작합니다. 즉, 정수와 같은 데이터 유형 내의 개별 비트에서 작동합니다. double 및 float에는 적용할 수 없으며 비트를 테스트하고 오른쪽 또는 왼쪽으로 이동하는 데 사용됩니다.
C 프로그래밍의 비트 연산자는 아래 표에 나와 있습니다.
연산자 | 기능 |
& | 비트 AND |
| | 비트 OR |
^^ | 비트 배타적 OR |
<< | 왼쪽으로 이동 |
>> | 오른쪽으로 이동 |
~ | 보완 |
예
다음 예제는 비트 연산자를 사용하는 C 프로그램을 보여줍니다.
#include정수 기본 ( ) {
정수 ㅏ = 13 ; // 이진수 1101
정수 비 = 7 ; // 이진수 0111
정수 결과 ;
// 비트 AND
결과 = ㅏ & 비 ; // 1101 & 0111 = 0101(십진수 5)
printf ( 'a & b = %u \N ' , 결과 ) ;
// 비트 OR
결과 = ㅏ | 비 ; // 1101 | 0111 = 1111(십진수 15)
printf ( 'a | b = %u \N ' , 결과 ) ;
// 비트별 XOR
결과 = ㅏ ^^ 비 ; // 1101 ^ 0111 = 1010(십진수 10)
printf ( 'a ^ b = %u \N ' , 결과 ) ;
// 비트 왼쪽 시프트
결과 = ㅏ << 2 ; // 1101 << 2 = 110100(소수점 52)
printf ( 'a << 2 = %u \N ' , 결과 ) ;
// 비트 오른쪽 시프트
결과 = ㅏ >> 2 ; // 1101 >> 2 = 0011(십진수 3)
printf ( 'a >> 2 = %u \N ' , 결과 ) ;
// 비트별 NOT
결과 = ~아 ; // ~1101 = 0010(-14의 10진수 2의 보수 표현)
printf ( '~a = %d \N ' , 결과 ) ;
반품 0 ;
}
메모: 비트 연산자는 비트 수준에서 작업을 수행하는 데 사용됩니다. 즉, 이진수 내의 개별 비트에서 작동합니다. 반면 부울 연산자는 논리 값에 대한 연산을 수행하는 데 사용됩니다. 부울 값(참/거짓 또는 1/0)에서 작동하며 일반적으로 의사 결정 프로세스 또는 조건문에 사용됩니다.
결론
연산자는 컴파일러가 특정 기능을 수행하도록 지시하는 기호입니다. C 언어에는 산술, 단항, 대입, 논리, 관계, 조건, 부울 및 비트 연산자를 비롯한 여러 내장 연산자가 있습니다. 이에 대해 자세히 논의하고 예제 출력으로 시연했습니다. 이러한 연산자에 대한 자세한 정보를 얻으려면 가이드의 위 섹션을 읽으십시오.