CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): hosoft (최종호)
날 짜 (Date): 1994년02월07일(월) 19시12분09초 KST
제 목(Title): Re:[퀴즈] 왜 죽을까요?

안녕하세요? 
이 보드에 처음으로 글을 올리는 것 같네요.

제 생각으로는 zeo님이 Compact, Large, Huge모델에서 
죽는다고 한데에서 답이 있지 않을까  생각해요.

그쪽에서는  포인터가  아마 seg와 off로 된 4바이트겠지요.
근도� malloc()함수를 컴파일러가 만났을 때 그 형을 알 수 없으니
리턴값응� int로 생각하겠지요.
그래서 실제로 malloc이  1234:5678이라는  주소를  리턴해도
그 중에서 5678만이 malloc의 리턴값이 되고
이것을 다시  (char *)로 캐스팅을 하게 되니까
0000:5678이 되겠지요.

피시 메모리만� 아시는 분들은 뭔가 위험하겠다는 것을 
느끼시겠지요? 특히 뒤의 off가  0-0x100(?)으로 벡터테이블쪽으로
가면 거의 일그러진 옴�면을 볼 수 밖에 없을꺼예요.

음.. 그러니까 제대로 돌게 하려면 malloc()의  원피活� 선언되어
있는 헤더를  #include 시켜주면 되지 않을까 합니다.

이거 아닌가?

덧말: 에디터가 상당히 불편하네요. :(


[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.