달력

12

« 2024/12 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2017. 12. 25. 21:39

포인터와 배열의 시작 Programming Language/C2017. 12. 25. 21:39

포인터 배열의 이해~ 



포인터 변수로 이뤄진, 그래서 주소 값의 저장이 가능한 배열을 --> 포인터 배열 이라 한다. 그리고 이러한 배열의 선언 방식은


int *arr1[20];  //길이가 20인 int형 포인터 배열 arr1

double *arr2[30]; // 길이가 30인 double형 포인터 배열 arr2


위의 문장에서 보이듯이 포인터 배열의 선언방식은 기본자료형 배열의 선언방식과 동일하다.

배열의 이름 앞에 배열요소의 자료형 정보를 선언하면된다.



인자전달의 기본방식은 값의 복사이다. 


함수호출시 절달되는 인자의 값은 매개변수에 복사가 된다.



여기서 제일 중요한 단어는 복사이다. 


즉 복사가 되는 것 뿐이기 때문에 함수가 호출되고 나면, 전달되는 인자와 매개변수는 별개가 된다.

 

배열을 통째로 넘겨받으려면 매개변수로 배열을 선언할 수 있어야 한다 . 하지만 이게 허용되지 않으니 배열을 통째로 넘기는 것은

불가능한 일이다. 대신에 함수 내에서 배열에 접근할 수 있도록 배열의 주소값을 전달하는 것은 가능하다.



배열을 함수의 인자로 전달하는 방식 


Call-by-value vs Call-by-reference 함수의 호출 방식을 의미한다 

주소값을 전달하는 형태다 




영어 시험을 준비하는 관계로 정신이 없어서 공부를 많이 못했다 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ


배열포인터랑 포인터배열에 대해서 좀더 공부하고 예제들 많이 찾아보기! 


:
Posted by Gongdile