다음을 통해 공유


C 승제 연산자

승제 연산자는 곱셈을 수행 (*), 나누기 (/), 및 나머지 (%) 운영 합니다.

구문

  • 곱셈 식:
    캐스트 식

    곱셈 식 * cast 식

    곱셈 식 / cast 식

    곱셈 식 % cast 식

나머지 연산자의 피연산자 (%) 정수 계열 이어야 합니다.곱셈 (*)와 나누기 (/) 연산자는 정수 계열 또는 부동 형식의 피연산자를 걸릴 수 있습니다 피연산자의 형식이 다를 수 있습니다.

곱셈 연산자는 일반적인 산술 변환이 피연산자에 수행합니다.결과 형식은 형식 피연산자의 변환 후입니다.

[!참고]

곱셈 연산자에서 수행 하는 변환 오버플로 또는 언더플로가 발생에 대 한 조건을 제공 하지 않으므로 곱하기 연산의 결과 피연산자 형식에서 변환 후 나타낼 수 없으면 정보가 손실 될 수 있습니다.

C 곱하기 연산자는 다음과 같습니다.

Operator

설명

*

곱하기 연산자는 두 피연산자와 곱할 수 인해 발생 합니다.

/

나누기 연산자는 첫 번째 피연산자가 두 번째 나눌 수 인해 발생 합니다.두 정수 피연산자를 나누고 결과 정수가 아닌 경우 다음과 같은 규칙에 따라 잘립니다.

 

  • 0으로 나누기의 결과 ANSI C 표준에 따라 정의 되지 않습니다.Microsoft C 컴파일러는 컴파일 타임 이나 런타임에 오류가 발생합니다.

 

  • 두 피연산자가 모두 양수 또는 서명 되지 않은 경우 결과 0으로 잘립니다.

 

  • 두 피연산자가 음수 이면 연산의 결과 대 수 몫 보다 작거나 같은 가장 큰 정수입니다 아니면 대 수 몫 보다 크거나 같은 가장 작은 정수입니다 정의 된 구현입니다.(아래의 Microsoft 관련 부분 참조).

%

첫 번째 피연산자가 두 번째 나누는 경우 나머지 연산자의 결과 나머지 부분입니다.나누기를 정확 하 게 되 면 그 결과 다음 규칙에 따라 결정 됩니다.

 

  • 오른쪽 피연산자가 0이 아니면 결과 정의 되지 않습니다.

 

  • 결과 두 피연산자가 모두 양수 또는 서명 되지 않은 경우, 양수입니다.

 

  • 두 피연산자가 음수이 고 정확 하 게 하지 않는 경우 결과 정의 된 구현입니다.(아래의 Microsoft 관련 부분 참조).

Microsoft 전용

피연산자 중 하나가 음수인 부서에서 잘라내기의 방향을 쪽으로 0입니다.

이런 작업 나누기와 나머지 연산자에서에서 음수 이면 결과 (식에서 첫째 피연산자) 배당 부호가 있습니다.

Microsoft 특정 끝

예제

아래 예제를 아래에 설명 된 선언은 사용 합니다.

int i = 10, j = 3, n;
double x = 2.0, y;

이 문은 곱하기 연산자를 사용합니다.

y = x * i;

이 경우 x 곱해집니다 i 20.0 값을 제공 합니다.결과 값이 이중 형식입니다.

n = i / j;

이 예제에서는 10 3으로 구분 되어 있습니다.결과 정수 값 3을 반환 합니다. 0으로 잘립니다.

n = i % j;

이 문은 할당 n 정수 나머지, 1, 10 3으로 나누어져 있을 때.

Microsoft 전용

나머지의 부호는 피제수의 부호와 동일합니다.예를 들면 다음과 같습니다.

50 % -6 = 2
-50 % 6 = -2

각각의 경우에서 50 및 2 같은 기호가 있습니다.

Microsoft 특정 끝

참고 항목

참조

승제 연산자: *, /, %