아래 첨자 연산자:]

postfix-expression [ expression ]

설명

아래 첨자 연산자가 뒤에 (또한 주 식 수)는 후 위 식 , 배열 인덱스를 지정 합니다.

관리 되는 배열에 대 한에 대 한 자세한 내용은 배열 (Visual C++).

표시 값은 일반적으로, 후 위 식 는 배열 식별자와 같은 포인터 값입니다 및 정수 계열 값 (열거 형식 포함)입니다.그러나 모든 구문적으로 식 중 하나 포인터 형식이 고 다른 정수 계열 형식 이어야 필수입니다.정수 계열 값에 따라서 수 있습니다의 후 위 식 위치 및 포인터 값에 괄호 안의 수는 또는 아래 첨자 위치.다음과 같은 코드 조각을 생각해 봅시다.

   int nArray[5] = { 0, 1, 2, 3, 4 };
   cout << nArray[2] << endl;            // prints "2"
   cout << 2[nArray] << endl;            // prints "2"

앞의 식 예제에서 nArray[2] 와 동일 합니다 2[nArray].이유는 첨자 식이 결과입니다 e1e 2 입니다:  

*( (e2) + (e1) )

식에 의해 생성 된 주소 수 없습니다 e 2 바이트 주소에서 e1.주소를 조절 하 여 배열에서 다음 개체를 대신 e 2.예를 들면 다음과 같습니다.

double aDbl[2];

주소를 aDb[0] 및 aDb[1] 8 바이트 떨어져-형식의 크기 이중.이 개체 형식에 따라 비율을 조정 하 고 C++ 언어에 의해 자동으로 수행 됩니다에 정의 된 가감 연산자 연산자 를 더하기와 빼기의 포인터 형식의 피연산자를 설명 합니다.

아래 첨자 식이 여러 아래 첨자, 다음과 같이 할 수도 있습니다.

expression1 expression2 expression3...

아래 첨자 식을 왼쪽에서 오른쪽으로 연결합니다.맨 왼쪽 아래 첨자 식이, 를 합하여식 2, 먼저 계산 됩니다.에 추가 하는 주소 를 합하여식 2 형성 포인터 식입니다. 그런 다음 expression3 마지막 첨자 식이 추가 되었습니다 때까지 새 포인터 식이를 형성 포인터 식에 추가 됩니다.간접 참조 연산자 (*) 최종 포인터 값은 배열 형식 주소 아니면 마지막 아래 첨자 식이 계산 된 후에 적용 됩니다.

여러 아래 첨자를 사용 하 여 식을 다차원 배열 요소를 참조 하십시오.다차원 배열의 요소에는 배열이입니다.예를 들어, 3 차원 배열의 첫 번째 요소를 2 차원 배열입니다.다음 예제에서는 선언 하 고 간단한 2 차원 문자 배열을 초기화:

// expre_Subscript_Operator.cpp
// compile with: /EHsc
#include <iostream>

using namespace std;
#define MAX_ROWS 2
#define MAX_COLS 2

int main() {
   char c[ MAX_ROWS ][ MAX_COLS ] = { { 'a', 'b' }, { 'c', 'd' } };
   for ( int i = 0; i < MAX_ROWS; i++ )
      for ( int j = 0; j < MAX_COLS; j++ )
         cout << c[ i ][ j ] << endl;
}

참고 항목

참조

후 위 식

C + + 연산자

연산자 우선 순위 및 결합성

배열 (C++)

개념

1 차원 배열

다차원 배열 (C)