2중포인터 간단한 코드 질문
늘찬
2024.10.24
질문 제목 : 질문 내용 :
int m[2][3] = { {1, 2, 3}, {4, 5, 6} };
int (*p)[3] = &m[1];
printf(%d\n, (*p)[1]);이코드 설명좀해주세요 ㅠㅠ
두번째줄 배열m값에 0을주었을땐 2 출력 1을 주었을땐 5가 출력되는데요
도무지 이해가 안갑니다.
-
핫레드 2024-10-24
죄송합니다. 고쳤습니다.
-
유진깡 2024-10-24
질문게시판에는 덧글을 포함해서 반드시 돋움체 또는 굴림체를 사용해야 됩니다.
이 폰트로 계속해서 덧글을 쓰면 탈퇴가 됩니다.
폰트는 자신의 블로그에서 설정할 수 있습니다. -
매디 2024-10-24
두분 감사드립니다.
-
핫레드 2024-10-24
m[2][3] = { {1,2,3}, {4,5,6} }; 요렇게하면 m[0] 에 {1,2,3} m[1] 에 {4,5,6} 이 들어가겠죵
자 (*p)[3] 이러면 &m[1]; 이러면 m[1]의 주소를 가져오겠죵 *p 에 m[1] 은 456 앞의주소 입니당
(*p)[1] 출력하면 결국 m[1][1] 을 출력하므로 5가 댑니다 0을 너으면 *p 에 m[0] 은 123 앞의 주소 입니당 m[0] 은 123 이니깐 (*p)[1] 이 가르키는 주소는 m[ -
동은 2024-10-24
int (*p)[3] 은 정수형 배열 [3]을 가리킬수 있는 포인터를 선언한겁니다.
&m[1]는 2행의 시작 주소를 가리키는 거죠.즉 {4,5,6}의 시작주소를 가리킴.
따라서 p는 {4,5,6}의 시작주소를 가리킴.
(*p)[1] 는 {4,5,6}의 두번째 값을 리턴함.
5가 나오겠네요.
번호 | 제 목 | 글쓴이 | 날짜 |
---|---|---|---|
2690834 | c언어 if문에서 출력 질문합니다 ㅜㅜ (2) | 파랑새 | 2025-04-08 |
2690809 | c언어 질문좀 부탁드리겠습니다 | 개구리 | 2025-04-08 |
2690777 | 말 표현에서 궁금한점이 있습니다. 배열을 통째로 넘겨받으려면 매개변수로 배열을 선언할 수 있어야한다? (8) | 별햇님 | 2025-04-07 |
2690749 | 피라미드 질문드립니다 (for문 한개) | 도래솔 | 2025-04-07 |
2690718 | 함수 포인터반환 함수 질문 | 에드워드 | 2025-04-07 |
2690685 | 2중for문 도와주세여..;; | 흰추위 | 2025-04-07 |
2690655 | 팩토리얼 계산문제..질문~ (9) | 옆집꼬마야 | 2025-04-06 |
2690627 | c 변수 선언후 변수값 저장안하고 출력 | 방방 | 2025-04-06 |
2690600 | 릴리즈 모드로 컴파일해서 다른 컴퓨터에서도 실행파일을 실행할수 있는 방법 알려주세요 (5) | 제나 | 2025-04-06 |
2690576 | bin파일 저장 | 다올 | 2025-04-06 |
2690547 | C언어 뒷부분이라 너무 어려워서요;; 프로그래밍 하나만 부탁드립니다 (4) | 그루터기 | 2025-04-05 |
2690517 | cygwin에서요.. (1) | 엘보어 | 2025-04-05 |
2690486 | 문자열과 문자형이요 ~ | 다스리 | 2025-04-05 |
2690344 | 일본어 주석 깨짐 문제 (3) | 연하얀 | 2025-04-04 |
2690314 | 암호문 만들기 -비제네르- | 이퓨리한나 | 2025-04-03 |
2690292 | 왕초보자의 질문!!!!!! 도와주세요 (1) | 하랑 | 2025-04-03 |
2690269 | 정올 문제 인데.. 흠 | 반월 | 2025-04-03 |
2690237 | sizeof에서 short형을 썻는데 왜 4byte가 나올까요? (1) | 바나나 | 2025-04-03 |
2690183 | 문자열과 포인트 비교 (2) | 미즈 | 2025-04-02 |
2690154 | a -48 ? | 희미한눈물 | 2025-04-02 |