좌우의 값 사이의 차이와 같은 배열 이름

  간단히 말하면, 그것은, 할당 연산자 "="오른쪽 오른쪽 값이 나타나는 할당 연산자에 표시 "="왼쪽 왼쪽 값이다.

  예를 들어, X = Y가.

  레프트 값이 맥락에서, 상기 컴파일러는 X의 의미 생각 표현 X의 어드레스 . 이 주소는 컴파일러가 알고 전용입니다 결정하기 위해 컴파일 시간에 특정 지역에서이 주소를 저장하도록 컴파일러에, 우리는 어디에서이 주소를 저장하는 고려해야 할 필요가 없습니다.

  오른쪽 값이 맥락에서, 컴파일러 작업 Y의 의미가있다 나타내는 Y 내부 주소의 내용 . 어떤이 내용은 실행할 알고있는 경우에만 .

 

  는 C-용어 소개 - "수정 값을 떠났다." 할당 연산자 주소 기호의 왼쪽에 표시 수단은 콘텐츠를 수정해야합니다 나타냅니다. 즉, 우리는 단지 비 읽기 전용 변수에 할당 할 수 있습니다.

  

  지금 당신은 왼쪽과 오른쪽 값 사이의 차이를 이해하는 것이, 그 다음은 왼쪽과 오른쪽 값으로 상황의 배열을 설명합니다.

  언제 어떤 의미를 나타내는 값으로 정확한 시간? 배열의 첫 번째 주소로 간주 많은 책은, 사실, 이것은 매우 잘못된 것입니다. 상기 오른쪽 값으로서의 의미 & A [0]와 동일하다 어레이의 첫 번째 요소의 첫 번째 어드레스 나타내는 식 sizof (a)에 나타내는에서 사용될 때보다 배열 (첫 주소 이름의 배열 하고,이 시점에서 두 가지 일들이되는 r- 수치)로 사용되지 않음. 그러나, 이것은 단지 대표가 아닌이 주소를 저장하기 위해 (특정 구현 세부 사항을 논의하기 위해 너무 많이하지 않습니다이 단지 그렇게 생각한다) 장소입니다, 참고, 즉, 컴파일러에 메모리 어레이의 블록을 할당하지 않습니다 해당 주소를 저장, 그것은 포인터와 매우 다를 것이다.

  이 값으로 둘 수 없습니다 ! 이 오류는 거의 모든 학생들이 최선을 다하고 있습니다. 우리는 단지 배열의 요소에 액세스 할 수 있습니다 왼쪽 값이 첫 번째 요소의 첫 번째 주소를 나타냅니다으로 컴파일러는 배열 이름의 의미를 고려할 것입니다, 그러나 이것은 전체의 시작 부분의 메모리 주소, 배열은 일반적으로 사용할 수 없습니다 액세스 할 수 있습니다. 그래서 우리는 [i]를 왼쪽 값 때 왼쪽이 값을 넣을 수 없습니다를 넣을 수 있습니다. 사실, 우리는 일반적인 관점으로 변수를 넣을 수 있지만,이 내부 변수는이 조각을 통해 액세스 변수의 전체에 대한 접근의 목적을 달성하기 위해, 많은 작은 조각으로 나누어 져 있습니다.

 

추천

출처www.cnblogs.com/doitjust/p/11318682.html