게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[본삭금] c언어 call by reference ? 질문이요
게시물ID : programmer_11772짧은주소 복사하기
작성자 : 수원오징어
추천 : 0
조회수 : 328회
댓글수 : 3개
등록시간 : 2015/07/01 07:36:14
옵션
  • 본인삭제금지
void Swap(int n)
{
    int i,j;  
    int temp,temp1;
    double temp2; 
    for(i=0; i<n-1;i++)
    {               
        for(j=i+1; j<n; j++)
        {
            if(num[4][i] < num[4][j])    
            {                               
                temp=num[0][i];             
                num[0][i]=num[0][j];      
                num[0][j]=temp;            
                temp1=num[4][i];               
                num[4][i]=num[4][j];               
                num[4][j]=temp1;                    
                 temp2=avg1[i];                  
                avg1[i]=avg1[j];               
                avg1[j]=temp2;               
            }     
        } 
    } 
}
 
전에 짯던 성적표에 swap 부분을 따온건데 이건 잘되는데
 
책에 있던 예제를 풀어보려고
void swap(pt pos1, pt pos2)
{
 pt temp;
 temp=pos1;
 pos1=pos2;
 pos2=temp;
}
이렇게 짜봣더니 이건 값이 바뀌지않더군요 책에보니 잘못된 예로 이이런식이 써있는걸 보았습니다.
근데 첫번째 소스는 변경이 잘만되고 두번째 소스는 왜 되지를 않나요 똑같이 call by referecne 아닌가요?
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호