<div style="border:1px solid rgb(0,0,128);color:rgb(0,0,0);font-family:Consolas, 'Courier New', Courier, Monospace;font-size:10pt;"> <div style="background:rgb(0,0,128);padding:2px 5px;color:rgb(255,255,255);font-family:Verdana, Tahoma, Arial, sans-serif;font-weight:bold;">Code Snippet</div> <div style="background:rgb(12,12,12);color:rgb(220,220,220);overflow:auto;max-height:300px;"> <ol style="background:rgb(0,0,0);margin:0px;padding:0px;" start="1"><li><span style="color:rgb(155,155,155);">#include</span><span style="color:rgb(214,157,133);"><stdio.h></span></li> <li style="background:rgb(12,12,12);"><span style="color:rgb(155,155,155);">#include</span><span style="color:rgb(214,157,133);"><stdlib.h></span></li> <li><span style="color:rgb(155,155,155);">#include</span><span style="color:rgb(214,157,133);"><conio.h></span></li> <li style="background:rgb(12,12,12);"> </li> <li> </li> <li style="background:rgb(12,12,12);"><span style="color:rgb(86,156,214);">int</span> <span style="color:rgb(200,200,200);">main</span><span style="color:rgb(180,180,180);">(</span><span style="color:rgb(86,156,214);">void</span><span style="color:rgb(180,180,180);">)</span></li> <li>{</li> <li style="background:rgb(12,12,12);"> <span style="color:rgb(86,156,214);">void</span> <span style="color:rgb(180,180,180);">*</span><span style="color:rgb(200,200,200);">vp</span><span style="color:rgb(180,180,180);">;</span></li> <li> <span style="color:rgb(86,156,214);">int</span> <span style="color:rgb(180,180,180);">*</span><span style="color:rgb(200,200,200);">pi</span><span style="color:rgb(180,180,180);">=</span><span style="color:rgb(189,99,197);">NULL</span><span style="color:rgb(180,180,180);">;</span></li> <li style="background:rgb(12,12,12);"> </li> <li> <span style="color:rgb(200,200,200);">vp</span> <span style="color:rgb(180,180,180);">=</span> <span style="color:rgb(180,180,180);">&</span><span style="color:rgb(200,200,200);">pi</span><span style="color:rgb(180,180,180);">;</span></li> <li style="background:rgb(12,12,12);"> </li> <li> <span style="color:rgb(87,166,74);">//*vp = (int*)malloc(sizeof(int)); pi=(int*)... 이렇게 하면 정상적으로 컴파일, 작동됨</span></li> <li style="background:rgb(12,12,12);"> </li> <li> <span style="color:rgb(180,180,180);">**(</span><span style="color:rgb(86,156,214);">int</span><span style="color:rgb(180,180,180);">**)</span><span style="color:rgb(200,200,200);">vp</span> <span style="color:rgb(180,180,180);">=</span> <span style="color:rgb(181,206,168);">5</span><span style="color:rgb(180,180,180);">;</span></li> <li style="background:rgb(12,12,12);"> </li> <li> <span style="color:rgb(200,200,200);">printf</span><span style="color:rgb(180,180,180);">(</span><span style="color:rgb(214,157,133);">"%d"</span><span style="color:rgb(180,180,180);">,</span> <span style="color:rgb(180,180,180);">**(</span><span style="color:rgb(86,156,214);">int</span><span style="color:rgb(180,180,180);">**)</span><span style="color:rgb(200,200,200);">vp</span><span style="color:rgb(180,180,180);">);</span></li> <li style="background:rgb(12,12,12);"> </li> <li> </li> <li style="background:rgb(12,12,12);"> <span style="color:rgb(86,156,214);">return</span> <span style="color:rgb(181,206,168);">0</span><span style="color:rgb(180,180,180);">;</span></li> <li>}</li></ol></div></div> <div> </div> <div> </div> <div> </div> <div>vp는 pi의 주소를 가리키고 *vp는 pi가 가리키는 메모리 영역을 포인트 하므로</div> <div> </div> <div>주석부분과 같이 코딩하면 최종적으로 pi가 가리키는 메모리 영역에 동적메모리가 할당 될 것이다...가 저의 생각이었는데</div> <div> </div> <div>에러가 발생합니다.</div> <div> </div> <div> </div> <div> </div> <div>vp대신에 pi=(int*)... 이런식으로 해도 되고</div> <div> </div> <div>아니면 그냥 임의의 int형 변수를 하나 만든다음에 pi가 그녀석을 포인트 해도 되지만</div> <div> </div> <div>왜 안되는지 이유가 궁금하네요...</div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.