PGR21.com
이전 질문 게시판은 새 글 쓰기를 막았습니다. [질문 게시판]을 이용바랍니다.
Date 2008/03/25 19:40:46
Name 루트
Subject C++ 질문


void function1 (int a, int b) {
...
...

}

...

main () {

int a;
int b;
function1(a,b);
..
}

이럴때... 메인에 있는 변수 a,b와 함수에 있는 a,b는 어떤 관련이 있는 것입니까?
같은 주소의 같은 값을 가리키는 것인지?

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
08/03/25 19:46
수정 아이콘
Call by value이기 때문에 그냥 값이 복사되서 넘어 가는 것 입니다.

주소를 넘기는 것은 Call by reference 입니다.
정지연
08/03/25 19:48
수정 아이콘
값이 같다는 것뿐 실질적인 메모리상의 주소같은건 아~~무 상관없습니다..
메인함수에서 펑션1을 호출하면 a,b 의 값이 카피가 되어 펑션1이 관리하는 메모리 영역에 따로 주소를 잡고 보관되어집니다.
펑션1이 종료되는 순간 펑션1에서 쓰는 a,b 는 날라가서 사라지게 되고요..
08/03/25 19:56
수정 아이콘
그렇군요. 감사합니다.
08/03/25 23:38
수정 아이콘
??????????????????(지나가는 문과생)
08/03/26 02:19
수정 아이콘
메인에서 a,b를 선언하면 메모리가 잡힐때 그 주소의 이름으로 a,b가 쓰입니다.

그 단순히 저기서 function1(a,b)라고 하시면 a,b에 있는 값이 전달됩니다.

그리고 function1(int a,int b)하면

또 다른 메모리 공간이 잡히는데 이것 역시 이름이 a,b가 됩니다.

단 function의 parameter...그러니까 매개변수라고 하죠...

함수내의 매개변수는 함수가 종료되면 그 메모리 공간은 그냥 슥 사라집니다.

access가 불가능 해집니다. (이것이 바로 call by value의 한계입니다.)

C++니까 call by reference나 pointer등의 기법으로 주소끼리 전달해서 직접 값을 다루는게 아니면은

함수 종료되고 다시 메인으로 호출될때 메인의 a,b에는 function1에서 쓰인 a,b와는 하등 연관이 없으며 function1에서 따로 쓸려고 만든 공간에 int a, int b를 선언하는거라고 생각하시면 됩니다...


길게 썼는데 정지연님껄 좀 복잡하게 만든 느낌이..ㅠㅠ
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
35180 과탐 질문이요..급합니다.. [9] Juan1513 08/03/25 1513
35177 몸에서 열이 계속나네요.. [8] 크로우2216 08/03/25 2216
35176 C++ 질문 [5] 루트1842 08/03/25 1842
35175 전세집 구하는 중인데 저렴하고 좋은 지역 추천 부탁드립니다. [2] too=cool2130 08/03/25 2130
35174 함수 질문드려요~ [3] 모르니~1954 08/03/25 1954
35173 fm 어떻게 끊나요 [23] Dis-v2105 08/03/25 2105
35172 갑자기 플래시 파일이 재싱이 안됩니다. 유대현1533 08/03/25 1533
35171 FM에 대해서 질문 좀 드릴게요... [15] 리틀세브첸코2110 08/03/25 2110
35170 디지털 카메라 구매! [6] Ribsand2159 08/03/25 2159
35169 사직서 제출했는데 안된다고 다시 가지고 올라가래서 가지고 올라왔는데요..ㅡㅡ; [8] 불꽃열2272 08/03/25 2272
35168 mp3 다운 주로 어디서 받으시나요? ㅠ [10] 마인대밭!!2787 08/03/25 2787
35167 배상명령신청에 대해 알려주세요~~~ ataraxia2100 08/03/25 2100
35166 이영호 선수의 명경기를 알려주세요! [1] buffett1910 08/03/25 1910
35165 어깨결림과 편도결석질문이요..ㅠㅠ [4] Pomm1996 08/03/25 1996
35164 자꾸 인터넷 연결이 끊겨서 죽겠네요. [6] 악학궤범a2071 08/03/25 2071
35162 다수scv동반 벙커링 , 뮤탈vs스커지 , ZvsP 노러커or뮤탈 , 카런자동리플저장 [8] 공유2077 08/03/25 2077
35161 듣고 있다보면 덩실덩실; 춤이라도 추고 싶을 만큼 즐거운 음악 추천 받아요ㅠㅠ [13] AU)Asiel1870 08/03/25 1870
35160 영작좀 도와 주세요...러브포보아가 말라갑니다 ㅠㅠ [6] 러브포보아2011 08/03/25 2011
35159 논리학 기초 질문입니다. [3] BluSkai1855 08/03/24 1855
35158 인터넷 동영상 재생 시 ntdll.dll 오류가 납니다. 치우단검2116 08/03/24 2116
35157 진리탐구자님이 참 궁금합니다... [10] chaser2306 08/03/24 2306
35156 프로게이머 이름 좀 알려주세요 [10] 길시언 파스크2129 08/03/24 2129
35155 그래픽 카드 질문입니다. [9] 모든게멈추면1750 08/03/24 1750
목록 이전 다음
댓글

+ : 최근 6시간내에 달린 댓글
+ : 최근 12시간내에 달린 댓글
맨 위로