고민 또 고민하고 결과가 안나온 내용입니다 ㅠㅠ (버블배열)
void swap(int *p,int *q){
int temp;
temp=*p;
*p=*q;
*q=temp;
.
.
.
for(x=5;x>0;x--){
for(y=0;x>y;y++){
if(bubble[y]>bubble[y+1])
swap(&bubble[y],&bubble[y+1]);
}
}
위에 스왑부분이 이해가 안되서 질문올립니다.
저는 인자를 교환하는 부분에서 &y와 &(y+1)을 교환하면 될줄알았는데 안되더군요 ㅠ
그러나 위에 처럼 하면 잘 나오덥니다;;;
&bubble[y]가 의미하는게 버블이라는 이름을 가진 정렬의 y번째 값을 나타내는게 아닌가요?
그리고 &bubble[y]와 bubble[y]의 차이가 무엇일까요?단지 &이 붙으면 주소값만을 나타내나요?
포인터랑 배열이 섞이니 혼란이 2배네요 ㅎㅎ;;
P.S 만약 제 질문의 형식이나 질문하는 방식이 잘못됬다고 여기신다면 언제든지 댓글로 달아주신다면 겸허히 수정하거나 삭제하겠습니다.
읽어주셔서 감사합니다 ^^