|
시험해보고 싶은데, 어느 무료 Compiler를 사용하셨는지를 모르겠네요-_-
늙은 초보 님이 쓰신 글 :
: PC내의 Text파일들에서 제맘대로 발췌한듯한 내용이 들어가 있더군요(생성된 실행파일을 text editor로 들여다보니).
:
: 자유게시판에 초보라는 이름으로 질문 두번했다가 여기에 올립니다. 사람들이 더 많군요. 그런데 '초보'라는 이름이
: 너무 많아 저는 '늙은 초보'라고 이름을 바꿨읍니다. 제가 좀 늙었거든요.
:
: 자유게시판에 올린거 보아주셔도 좋지만, 요약하면 이렇습니다.
:
: 1. 같은 소스에대해, compiler옵션들을 건드리지 않고, 연달아 Build하여 생기는 실행파일들을 서로 비교한다면
: 완전히 같아야 될거 같은데, 약간은 다릅니다. byte단위로 파일을 비교하는 도구(그런 프로그램들 많이 있죠)를 사용
: 해 보면 파일 크기는 똑같은데 일부 내용이 좀 다릅니다.
: 제가 사용하는 문제의 그 compiler(볼랜드 꺼 아님)외에 다른 유명 compiler도 이 현상은 마찬가지던데요.
: 도데체 왜 다른 걸까요. 물론 디버그 정보등 불필요한 내용을 담지 않도록 Build를 실시했읍니다.
:
: 2. 더욱 황당한건, 제가 사용하는 compiler로 Build하면 종종 자주 PC안의 Text파일등 각종 정보가 실행파일안에
: 들어있다는 거죠. 처음 text editor로 내용을 들여다봤을땐 소스코드의 일부가 들어있더군요. 대부분의 내용이
: 기계어등 text로는 이상한 글자로 나타나야 할 파일내에서 나의 소스코드 일부를 발견했을때의 놀라움이란!
: 그 뒤로 계속 Build해보면서 본것들 중엔 내가 다른 폴더에 내 생각들을 일기처럼 적어놓은 text파일 내용도
: 들어 있더군요.. 나참 황당해서..
: 제 생각엔 무료 compiler라서 그 개발자들이 뭔가 장난쳐놓은거 아닌가 싶네요.
: 그리고 어느 분이 두번 정도 저의 글에 답을 달아주시면서 실행파일내 전역변수영역등에 관해 설명해 주셨는데,
: 지정안된 부분에 대해 compiler가 나름대로 초기화한다면 0으로 채우던가 아니면 중구난방의 의미없는 값들로
: 채워져야 하는거 아닌가요. 제가 전역변수나 초기치개념도 몰라서 질문한게 아니죠. 초기치로 왜, 어째서, 나의
: 중요한 다른 파일 내용을 가져와 채워넣느냐 하는 것이 저의 질문이었죠.
:
: 저와 같은 경험을 해보신분이나, 이제라도 위의 두가지 측면을 시험해보신분들이 답글 달아주시기 부탁합니다.
|