<div><br></div> <div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;">#include <stdio.h></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;">#include <stdlib.h></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;">int main(void){</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><span class="Apple-tab-span" style="margin:0px;padding:0px;white-space:pre;"></span>int A[3][4]={{11,12,13,14},{21,22,23,24},{31,32,33,34}};</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><span class="Apple-tab-span" style="margin:0px;padding:0px;white-space:pre;"></span>int *p = *A; </div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><span class="Apple-tab-span" style="margin:0px;padding:0px;white-space:pre;"></span>int **test;</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"> test = &p;</div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;color:#404040;font-family:sans-serif;font-size:13px;"> <div style="margin:0px;padding:0px;"><span class="Apple-tab-span" style="margin:0px;padding:0px;white-space:pre;"></span>printf("test[0][0]: %d\n",test[0][0]);</div> <div style="margin:0px;padding:0px;"><span class="Apple-tab-span" style="margin:0px;padding:0px;white-space:pre;"></span>printf("test[0][4]: %d\n",test[0][4]);</div> <div style="margin:0px;padding:0px;"><span class="Apple-tab-span" style="margin:0px;padding:0px;white-space:pre;"></span>printf("test[1][4]: %d\n",test[1][4]);</div> <div style="margin:0px;padding:0px;">}</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;">여기서 첫번째 printf에서는 a[0][0]인 11을출력하고, 두번째 printf에서는 주소 연산으로 a[1][0]인 </div> <div style="margin:0px;padding:0px;">21을 출력하는것 까지는 알겠습니다.</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;">test[0][4] = *( *(test + 0) + 4) 이므로 *( &A[0][0] + 4) 이므로 21</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;">그런데 세번째 printf에서는 제 생각으로는 31이 출력되어야 할것 같은데</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;">test[1][4] = *( *(test + 1) + 4) = *( &A[1]+4) = *( &A[1][0] +4) 이므로 A의 1행 0열로부터 4만큼 더한 곳인 31이 출력되어야 하는것 아닌가요?</div> <div style="margin:0px;padding:0px;"><br style="margin:0px;padding:0px;"></div> <div style="margin:0px;padding:0px;">이상한 값이 출력되네요..</div> <div style="margin:0px;padding:0px;"><br></div> <div style="margin:0px;padding:0px;"> <div style="text-align:left;"><img src="http://thimg.todayhumor.co.kr/upfile/201703/1489810498b7d9d8d342be4838adcdffd53d45f382__mn192384__w340__h87__f7147__Ym201703.png" width="340" height="87" alt="이미지 3.png" style="border:none;" filesize="7147"></div><br></div> <div style="margin:0px;padding:0px;"><br></div></div></div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.