PGR21.com
이전 질문 게시판은 새 글 쓰기를 막았습니다. [질문 게시판]을 이용바랍니다.
Date 2009/04/09 21:32:33
Name Magic_'Love'
Subject 포인터 질문입니다.
그냥 개념적인 질문인데요..

제가 알고 있는것에 대한 혼란이 좀 있어서요..

일단, 저는 포인터 변수의 크기를 4바이트라고 알고 있는데요, 포인터 변수의 형이 어떠하던지 상관없이 4바이트인걸로 알고 있습니다.

그러니까

float *pt;
double *pa;
int *pb;
char *pc;
unsigned int *pd;
long int *pe;


이렇게 포인터의 형이 다르다고 해도 포인터 변수의 크기는 동일하게 4바이트인것 아닌가요?
단지 저 변수는 메모리를 한번에 취급하는 정도이구요.. 저는 이렇게 알고 있습니다.
이게 확실하게 맞는건가요?

그리고 어떤 함수

void abc(int a[], int b)
{
}

가 있을때요.. 첫번째 매개변수 a는 메인에서 배열을 넘겨줄때 그걸 받기 위해서 해주는 걸로 알고 있는데요..
저게 포인터 변수로 취급되는 건가요? 아니면 그냥 abc 함수에서 배열을 생성하는 건가요?
메인에서 12바이트 크기의 배열을 넘겨줄때, 저 a가 포인터로 취급되어서 4바이트가 되는지, 아니면 12바이트가 되는지
궁금합니다.

보통 책에서는 int a[] 이렇게 매개변수로 받는걸 잘 못봤는데 갑자기 저렇게 나오니까 좀 햇갈리네요..

답변 부탁드립니다.

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
09/04/09 21:50
수정 아이콘
1. 32비트 환경에서는 포인터 변수는 형에 상관없이 4바이트입니다.
2. 이부분은 실제로 해봐야 알것같네요. 지금 컴파일러가 없어서;;
간단한 방법으로 함수의 스택사이즈 확인하시면 됩니다.
스택사이즈가 배열a의 사이즈 만큼 크다면 복사전달이고 그렇지 않다면 주소전달입니다.
MoreThanAir
09/04/09 22:26
수정 아이콘
2번의 경우에는 a가 배열의 이름... 즉 포인터 변수가 아니라 포인터 상수인듯 합니다.

안에 주소를 담고 있기는 하지만 상수이므로 a자체의 값을 변화시킬 수는 없겠죠.

a[0], a[1],... 이런 식으로 안에 있는 값을 참조는 할 수 있습니다.

abc함수 안에서

int * pt;
pt=a;
이렇게 포인터 변수를 잡아준다면
pt++; 등의 연산도 가능하겠네요.
Magic_'Love'
09/04/09 23:48
수정 아이콘
Memex님// MoreThanAir님// 답변 감사합니다.
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
53563 중고자동차에 대한 질문이요.. [16] 민최강2923 09/04/10 2923
53562 근데 20대 초반기준으로 180이 큰키인가요? [31] 강남재벌3세8088 09/04/10 8088
53561 사칙연산 빠르게 하는 팁이 있을까요? [6] 꿀빵3761 09/04/10 3761
53560 드렁큰 타이거 곡들중에 라임이 뛰어난 곡들좀 추천해주세요. [1] 메타루2148 09/04/10 2148
53559 PDA용 게임이 많은 사이트 추천 부탁드려요. [2] Shura2242 09/04/10 2242
53558 이런식의 바지는 어떤건가요; [3] Revere2238 09/04/10 2238
53557 여기중에서 하나를 고르라면 어떤걸 고르시겠나요?? [24] 미역국2537 09/04/10 2537
53556 외국에서 한국 드라마 보기, 어디 어디 있을까요? [6] 오늘도대략7214 09/04/10 7214
53555 혼성중창 추천해주세요! [1] BF)FantA2146 09/04/10 2146
53553 이거 사기전화의 유형인가요?? [7] Enjoy2211 09/04/09 2211
53552 무선통신 및 회로이론에서 bandwidth에 대해 질문이 있습니다 [1] Ibiza2194 09/04/09 2194
53550 영화 촬영하는 곳에서... [9] BBCrunch1850 09/04/09 1850
53549 손해보험사 취업 관련 질문입니다 [1] 캐리건을사랑2143 09/04/09 2143
53548 여의도 벚꽃축제 질문 입니다. [9] 이쥴레이2553 09/04/09 2553
53546 집에서 염색해보신분 게신가요? [9] 창작과도전2341 09/04/09 2341
53545 유머인데 게임운영자가 답변한거아jpg파일 어디서 구하죠? [2] 불타는오징어1608 09/04/09 1608
53544 여자 아이돌 그룹 숙소를 아시나요? [4] 무쇠다리2768 09/04/09 2768
53543 노래를 찾습니다 (능력자 분들 모십니다) [4] MoreThanAir1915 09/04/09 1915
53542 iccup 한글 욕은 아무리 해도 신고 안되나요? [1] 공유2144 09/04/09 2144
53541 예체능계 대학들 질문드립니다. [7] 오월2220 09/04/09 2220
53540 포인터 질문입니다. [3] Magic_'Love'1596 09/04/09 1596
53538 pgr유저님들의 '키' 질문입니다. [87] Enjoy2625 09/04/09 2625
53537 수영과 자전거의 다이어트 효과에 대해서 문의 드립니다. [6] 허접플토3115 09/04/09 3115
목록 이전 다음
댓글

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