Turbo-C
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
터보-C 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
Lua 게시판
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C/C++ Q/A
[3304] Re:포인터 질문...[긴급]
김시환 [godson2] 1283 읽음    2004-04-07 20:50
먼저 배열의 이름은 배열의 첫번째 인자의 주소를 저장하는
포인터라는 사실을 알고 시작 해야죠..

char str[]="pointer are fun";
char *p;

p=str;               // *p=str 이라고 하면 에러남


char * p <--이렇게 선언을 해 주었으므로
컴파일러는 이미  p 라는 변수가 포인터형이라는 것을 알고 있습니다.
그 상황에서 동일한 타입의 포인터 값을 저장하는 것은 문제가 없습니다.


int M[5]={3,6,9,12,15};
int p = M ;

이 경우 p 는 포인터형 변수가 아니라 그냥 정수형 변수입니다.

int p ;   p = M ;   
이것과 같은 의미이지요..

int *p = M 은   int *p ;  p = M
첫번째 구문과 같지요..


그냥 단순하게 생각하면 컴파일러는 순차적으로 해석을 합니다.
int p = 100 ; 이런 한개의 문장이 있다고 하더라도
컴파일러는 2개의 문장으로 해석을 하는 것이죠
int p ;   p = 100 ; 이런식으로

그러니 님께서 말한 2번째의 경우는 정수형 변수를 선언하고
포인터형을 대입한 것입니다. 조금만 생각해 보면
금방 알 수 있는 겁니다.







+ -

관련 글 리스트
3302 포인터 질문...[긴급] 이성근 1311 2004/04/07
3306     감사합니다.^^ 이성근 1253 2004/04/07
3304     Re:포인터 질문...[긴급] 김시환 1283 2004/04/07
3303     Re:포인터 질문...[긴급] Starlet 1342 2004/04/07
3305         Re:Re:포인터 질문...[긴급] 김시환 1245 2004/04/07
4395             Re:Re:Re:포인터 질문...[긴급] Starlet 1281 2004/04/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.