모바일 오유 바로가기
http://m.todayhumor.co.kr
분류 게시판
베스트
  • 베스트오브베스트
  • 베스트
  • 오늘의베스트
  • 유머
  • 유머자료
  • 유머글
  • 이야기
  • 자유
  • 고민
  • 연애
  • 결혼생활
  • 좋은글
  • 자랑
  • 공포
  • 멘붕
  • 사이다
  • 군대
  • 밀리터리
  • 미스터리
  • 술한잔
  • 오늘있잖아요
  • 투표인증
  • 새해
  • 이슈
  • 시사
  • 시사아카이브
  • 사회면
  • 사건사고
  • 생활
  • 패션
  • 패션착샷
  • 아동패션착샷
  • 뷰티
  • 인테리어
  • DIY
  • 요리
  • 커피&차
  • 육아
  • 법률
  • 동물
  • 지식
  • 취업정보
  • 식물
  • 다이어트
  • 의료
  • 영어
  • 맛집
  • 추천사이트
  • 해외직구
  • 취미
  • 사진
  • 사진강좌
  • 카메라
  • 만화
  • 애니메이션
  • 포니
  • 자전거
  • 자동차
  • 여행
  • 바이크
  • 민물낚시
  • 바다낚시
  • 장난감
  • 그림판
  • 학술
  • 경제
  • 역사
  • 예술
  • 과학
  • 철학
  • 심리학
  • 방송연예
  • 연예
  • 음악
  • 음악찾기
  • 악기
  • 음향기기
  • 영화
  • 다큐멘터리
  • 국내드라마
  • 해외드라마
  • 예능
  • 팟케스트
  • 방송프로그램
  • 무한도전
  • 더지니어스
  • 개그콘서트
  • 런닝맨
  • 나가수
  • 디지털
  • 컴퓨터
  • 프로그래머
  • IT
  • 안티바이러스
  • 애플
  • 안드로이드
  • 스마트폰
  • 윈도우폰
  • 심비안
  • 스포츠
  • 스포츠
  • 축구
  • 야구
  • 농구
  • 바둑
  • 야구팀
  • 삼성
  • 두산
  • NC
  • 넥센
  • 한화
  • SK
  • 기아
  • 롯데
  • LG
  • KT
  • 메이저리그
  • 일본프로야구리그
  • 게임1
  • 플래시게임
  • 게임토론방
  • 엑스박스
  • 플레이스테이션
  • 닌텐도
  • 모바일게임
  • 게임2
  • 던전앤파이터
  • 마비노기
  • 마비노기영웅전
  • 하스스톤
  • 히어로즈오브더스톰
  • gta5
  • 디아블로
  • 디아블로2
  • 피파온라인2
  • 피파온라인3
  • 워크래프트
  • 월드오브워크래프트
  • 밀리언아서
  • 월드오브탱크
  • 블레이드앤소울
  • 검은사막
  • 스타크래프트
  • 스타크래프트2
  • 베틀필드3
  • 마인크래프트
  • 데이즈
  • 문명
  • 서든어택
  • 테라
  • 아이온
  • 심시티5
  • 프리스타일풋볼
  • 스페셜포스
  • 사이퍼즈
  • 도타2
  • 메이플스토리1
  • 메이플스토리2
  • 오버워치
  • 오버워치그룹모집
  • 포켓몬고
  • 파이널판타지14
  • 배틀그라운드
  • 기타
  • 종교
  • 단어장
  • 자료창고
  • 운영
  • 공지사항
  • 오유운영
  • 게시판신청
  • 보류
  • 임시게시판
  • 메르스
  • 세월호
  • 원전사고
  • 2016리오올림픽
  • 2018평창올림픽
  • 코로나19
  • 2020도쿄올림픽
  • 게시판찾기
  • 오유인페이지
    개인차단 상태
    잠이오네요님의
    개인페이지입니다
    가입 : 11-04-28
    방문 : 3814회
    닉네임변경 이력
    회원차단
    회원차단해제
    게시물ID : computer_44157
    작성자 : 잠이오네요
    추천 : 0
    조회수 : 946
    IP : 118.223.***.195
    댓글 : 1개
    등록시간 : 2012/04/17 23:54:43
    http://todayhumor.com/?computer_44157 모바일
    argv[argc] == NULL 문제
    http://pages.cs.wisc.edu/~cs354-1/onyourown/C.argv.html

    여기서 찾았네요(영문 사이트입니다)

    원래는 argv의 범주는 0~(argc-1)이지만, ANSI C에서 argv[argc]는 NULL로 초기화 하게 되어있더군요.

    그런데 이유가, char **argv 라고 할때, 컴파일러는 그냥 argv를 가져다 써도 이것을 문자열(...)로 인식한다네요.

    이건 C언어 자체가 문자와 문자열 포인터를 구분하지 않게 되있어서(........) 생기는 문제로

    문자열을 처리하듯이 NULL문자를 찾을때 까지 진행하는데, 이때 프로그램이 죽는것을 방지하기 위해 마지막에 null을 달아준다고 합니다.

    결국은 문자 포인터의 배열을 문자열 처럼 처리가능하게 해주기 위해 마지막에 NULL을 달아준 것으로

    링크에서 표현했다 시피, argv자체를 문자열처럼 쓰는 잘못된 코드에 대비하기 위해서 달아놓은 것이라고 하네요...

    그리고 개인적인 실험 결과로, argv가 어디까지 자동 초기화 되냐는 결과인데

    결론적으로 컴파일러(또는 링커) 설정에 따라 다른것 같습니다.

    VS2010에선 4813번 인덱스까지 NULL 또는 NULL 문자열을 가리키도록 초기화 되어있고

    GCC3.4.2 for Windows 에선 123번 인덱스까지 NULL 또는 NULL문자열을 가리키도록 되어 있네요.

    아무래도 컴파일시에 MAX_ARG_SIZE 설정에 따라, 미리 최대 인자 사이즈만큼 argv를 만들어 놓고

    거기에 차례대로 집어넣으면서 argc를 카운트하는 것 같습니다.

    예전에는 메모리 낭비였겠지만, 요즘 컴퓨터에 VS2010기준 약 1KB내외의 메모리 정도는 낭비했는지도 모를테니

    그냥 미리 최대사이즈만큼 크게 만들어 놓고 쓰는 것 같습니다.

    실행시 메모리 할당 횟수가 많으면 런타임이 늘어날테니 한번에 잡아놓자는 목적도 있을것 같구요.

    아무튼 argv[argc] == NULL 이 된 이유는 게으른 코더의 실수로 프로그램이 뻗는걸 방지하기 위한 ANSI의 친절의 결과 같습니다;
    (메모리보호가 없는 환경에서는 시스템 크래시를 막기위해서 필요할지도 모르겠네요)

    이 게시물을 추천한 분들의 목록입니다.
    푸르딩딩:추천수 3이상 댓글은 배경색이 바뀝니다.
    (단,비공감수가 추천수의 1/3 초과시 해당없음)

    죄송합니다. 댓글 작성은 회원만 가능합니다.

    번호 제 목 이름 날짜 조회 추천
    320
    혹시 지옥이나 불지옥 진행하면서 [1] 잠이오네요 12/05/25 16:35 159 0
    319
    작화 관련 글 올라오는 기념 작화 관련 정리 잠이오네요 12/05/25 07:31 119 5
    318
    길가다가 연애편지 주워서 읽었는데 [4] 잠이오네요 12/05/23 23:13 684 2
    317
    지금 원하는 템 셋팅이 잠이오네요 12/05/22 17:42 80 0
    316
    아무생각 없이 잡몹 몰이 하는데 [6] 잠이오네요 12/05/22 08:04 1123 5
    315
    6개월 컨텐츠 이야기 정리 [2] 잠이오네요 12/05/22 02:18 587 10
    314
    근데 대장장이 레벨같은 경우 [5] 잠이오네요 12/05/21 14:54 585 0
    313
    아...오늘 저녁부터 주말로 치면... 잠이오네요 12/05/18 20:58 90 0
    312
    할일 없어서 인벤이랑 여기저기 스킬 보고 다녔는데 [5] 잠이오네요 12/05/17 08:21 838 5
    311
    전 디아3 스킬시스템 마음에 듭니다. [1] 잠이오네요 12/05/17 06:19 498 1
    310
    디아3 불만인점... [1] 잠이오네요 12/05/16 18:23 327 0
    309
    아 열받아서 그냥 북미썹 갑니다... 잠이오네요 12/05/16 00:57 161 0
    308
    아 진짜로... 잠이오네요 12/05/16 00:30 104 0
    307
    혹시 게임하다가 튕기신분...? 잠이오네요 12/05/15 23:21 117 0
    306
    11번가에서 상품 미리 올린거 [1] 잠이오네요 12/05/15 09:01 528 0
    305
    11번가 미리올린것 같은데 잠이오네요 12/05/15 08:57 384 0
    304
    헐 뭐지? 잠이오네요 12/05/15 06:43 100 0
    303
    열렷어요 [6] 잠이오네요 12/05/15 06:38 272 0
    302
    OTM님 하나만 물어봅시다 [3] 잠이오네요 12/05/11 16:04 66 0
    301
    천조국의 흔한 3살 게이머 [1] 잠이오네요 12/05/05 04:21 201 2
    300
    블소 돈벌려면 잠이오네요 12/04/30 03:05 135 0
    299
    이론적으로 영구기관 가능 합니다. 잠이오네요 12/04/30 02:20 83 2
    298
    OTM님 블로그 보니 에너지보존법칙을 부정하셨더군요... [12] 잠이오네요 12/04/29 16:25 102 0
    297
    NC vs 블리자드 [9] 잠이오네요 12/04/23 15:04 403 0
    296
    [18, 혐오]흔한 게임 광고 [2] 잠이오네요 12/04/18 00:48 300 1
    argv[argc] == NULL 문제 [1] 잠이오네요 12/04/17 23:54 39 0
    294
    이게임 아시는분? [2] 잠이오네요 12/04/15 04:32 190 0
    293
    지난 FTP 가결 때 베오베 갔던 사람입니다. [2] 잠이오네요 12/04/10 20:04 56 0
    292
    클로다랑 싸웠어요 [1] 잠이오네요 12/04/08 05:54 115 0
    291
    며칠동안 생각을 좀 해봤습니다. [7] 잠이오네요 12/04/04 17:05 183 5
    [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [다음10개▶]
    단축키 운영진에게 바란다(삭제요청/제안) 운영게 게시판신청 자료창고 보류 개인정보취급방침 청소년보호정책 모바일홈