0
는 여기로 이동 : http://cdecl.org/cdecl 설명 필요 : "배열 5"란 무엇입니까?
입력 :
char (*arr)[5]
출력 :
에 "어레이 (5)은"이란 문자
의 어레이 (5)에 대한 포인터로선언 편곡? 이것은 단순히 5 개의 요소가있는 배열을 의미합니까?
는 여기로 이동 : http://cdecl.org/cdecl 설명 필요 : "배열 5"란 무엇입니까?
입력 :
char (*arr)[5]
출력 :
에 "어레이 (5)은"이란 문자
의 어레이 (5)에 대한 포인터로선언 편곡? 이것은 단순히 5 개의 요소가있는 배열을 의미합니까?
5 개 요소의 배열에 대한 포인터입니다.
//Standard array
char array[5];
//pointer to array
char (*arr)[5];
//Assign pointer of array to arr
arr = &array;
//Dereference arr and use it.
(*arr)[1] = 4;
배열에 대한 포인터와 참조는 배열을 함수로 전달하고 반환하는 데 유용합니다. 수명이 다해 반환 될 때마다 로컬 비 정적 배열을 반환하지 마십시오. 예, 그것은 않습니다 char (&arr)[5] = array;
분명히 10 분 더 답변을 수락 할 수 없습니다. 다른 사람들에게도 기회를 주어야합니다. –
:
는이 선언을 사용할 수있는 배열을 참조하십시오. 너를 불편하게 만드는 것은 무엇인가? 배열이 포인터로 붕괴 될 수 있다는 사실? –@ jnbrq-CanberkSönmez 배열은 암시 적으로 첫 번째 요소를 가리키는 포인터로 캐스트 할 수 있지만이 'decay'는 배열에 대한 포인터가 아닙니다. OP가 가지는 것은 배열에 대한 실제 포인터입니다 –
불편 함이 없으며 단지 설명이 필요합니다 –