2014-04-13 2 views
1

나는어떤 C- 데이터 유형을 사용해야합니까?

void asd(unsigned int *&name) 

내 질문 같은 것을 지금 이름은 변수의 유형이다가있는 머리에 외부 함수를 호출해야? 나는 그것이 배열로서 기능해야한다는 것을 안다. 그러나 나는 간단한 unsigned-int-array를 전달하는 것이 효과가 없기 때문에 조금 혼란 스럽다.

편집 :

때문에 당신의 친절한 도움으로 나는 시도 : 나에게 "이름의 저장 크기가 알려져 있지 않다"하지만 같은 오류를 제공

unsigned int* name[]; 
asd(feld); 

을 나는

을 쓸 때
unsigned int* name[10]; 
asd(feld); 

임시 형식 int에서 부호없는 int & 형식의 비 const 참조 초기화가 유효하지 않습니다. 이제 나는 정말로 혼란스러워진다.

+4

'unsigned int'에 대한 포인터이므로 unsigned int *'lvalues를 받아 들일 것입니다. – juanchopanza

+0

나는 juanchopanza의 답변에 아무 것도 덧붙여지지 않았으므로 나는 대답하지 않고있다. –

답변

3

nameunsigned int에 대한 포인터에 대한 참조이므로 unsigned int* 값을 허용합니다. 예를 들어,

unsigned int* p = nullptr; 
asd(p); 

참조로 전달되는 인 사실은 asd 함수가 전달 된 포인터의 값을 변경할 수 있음을 의미하며, 이러한 변화는 호출자에 의해 알 수있다.

+0

@stefan 고마워. 나는 "any"를 의미했지만, 심지어 그것은 중복되었습니다. – juanchopanza

+0

잘 고쳐 주셔서 감사합니다. – stefan

+0

나는 이것을 시도했지만 슬프게도 작동하지 않았습니다. – Hagadol

관련 문제