모바일 오유 바로가기
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도쿄올림픽
  • 게시판찾기
  • 오유인페이지
    개인차단 상태
    우와우와우왕님의
    개인페이지입니다
    가입 : 12-07-21
    방문 : 405회
    닉네임변경 이력
    회원차단
    회원차단해제
     

    우와우와우왕님의 댓글입니다.
    번호 제목 댓글날짜 추천/비공감 삭제
    154 [질문글] 1인 제작 게임에서 사운드는 어떻게 구해야 할까요...?? [새창] 2015-10-12 23:07:41 0 삭제
    인터넷 사이트는 대부분이 재판매를 금지하네요 ㅠㅠ
    워낙에 저렴한 인맥이라 지인중에 사운드를 다룰줄 아는사람도 없고....
    걍 오픈마켓에서 돈내고 사는게 젤 나은듯요 ㅠㅠ
    153 (질문)콘솔 화면에서 실행하는 테트리스 만드는 중인데 질문점.. [새창] 2015-09-12 17:19:37 0 삭제
    보니까 같은함수를 2번 선언했군요 ㄷㄷㄷ....
    내가 왜 이런 실수를 ㅠㅠ
    152 타블렛 드라이버 문제랑 포토샵 때문에 머리아파죽겟음... [새창] 2015-09-08 21:49:32 0 삭제
    2가지 방법 다 안되는군요 ㅠㅠㅠㅠ
    혹시 다른방법은 없을까요...??
    151 void 포인터에 대해서 질문좀... [새창] 2015-07-14 16:23:33 0 삭제
    케스케이딩은 아직 뭔지 잘 몰겠네요 ㅠㅠ
    150 void 포인터에 대해서 질문좀... [새창] 2015-07-14 16:20:08 0 삭제
    좀더 자세히 보시면
    ar은 +1을 해 줌으로써 자신의 주솟값 만큼 가리키는 주소를 상승 시켰습니다.
    여기서는 4만큼의 주솟값을 상승시켰지요
    cr+1은 어떨까요? 이녀석도 주솟값을 상승시키되 1만큼의 주소를 상승시킵니다.

    왜 똑같이 +1을 해주었지만 ar과 cr이 상승된 주솟값이 다른걸까요??
    바로 둘의 자료형이 다르기 때문입니다.
    그리고 컴파일러는 이 자료형을 인지 할 수 있기때문에 주솟값을 다르게 상승시킬수 있는것이구요

    컴파일러는
    int* 형에는 4만큼의 주소를 이동시키고 char*형에는 1만큼의 주소를 이동시킨다는 사실을 알고있으며
    컴파일러는 해당 변수가 무슨 자료형인지 알고 있습니다.

    다시 void*이야기로 넘어가지요
    void*는 포인트 할 수 있는 자료형이 굉장히 많습니다.
    void*가 임의의 자료형을 타입 캐스팅 없이 포인트 시키면 어떻게 될까요?
    불가능 합니다. 주소는 알수 있겠지만
    얼마만큼의 주소를 읽어야 할지 알수 없습니다.(4byte? 1byte? 8byte?)
    그래서 사용자는 보이드포인터에게 이 크기를 명시적으로 알려줘야 합니다.
    이 명시적인 표현이 바로 타입캐스팅이구요
    149 void 포인터에 대해서 질문좀... [새창] 2015-07-14 16:13:35 0 삭제
    void* 형은 포인트 할 수 있는 자료형이 엄청 많습니다.
    int, char, double,float 같은 것들도 있고
    int*, char*, double*, float* 같은 포인터 자료형도 포인트 할수 있구요
    즉, 굉장히 유동적인 친구입니다.

    잠간 배열이야기로 넘어가도록 할께요
    int ar[5]={1,2,3,4,5};
    char cr[5]={'1','2','3','4','5'};

    배열이름은 상수형 포인터로서 배열의 첫번째 원소의 주소를 가르키므로 포인터처럼 이용할 수 있습니다.
    그럼 여기서 *ar 이 상징하는것은 무엇일까요? 바로 ar[0] 입니다 초기화 된 값은 1이군요.
    그러면 *(ar+1)은? 2가 되겠지요
    그럼 *(cr+3)은? cr[3]으로써 '4'가 저장되어 있네요
    148 void 포인터에 대해서 질문좀... [새창] 2015-07-14 16:03:18 0 삭제
    (int *)vp 이부분은 타입이 '정수형'이다라는 게 아니라 '정수형 포인터'이다 라고 알려주는거 아닌가요?
    정수형이라고 명시 시킬려면 (int) vp 이렇게 되야될듯한데....
    147 void 포인터에 대해서 질문좀... [새창] 2015-07-14 15:47:26 0 삭제
    처음에 pi가 포인트하는 주소가 NULL 이지만
    동적할당을 통해서 새로운 메모리를 주었으며
    동적할당으로 메모리를 얻게되면 포인트 주소는 새로 할당되게 됩니다.
    그에따라서 더이상 pi의 포인트 주소는 NULL이 아니게 되었구요
    때문에 더이상 NULL이 아닌 해당 주소에 새로운 값을 넣을수 있게 되는거 아닌가요?

    문제는 메모리 할당부분이 정상적으로 작동되지 않는거구요
    146 void 포인터에 대해서 질문좀... [새창] 2015-07-14 15:37:04 0 삭제
    *(int*)vp = (int)malloc(sizeof(int));
    13번째줄을 이렇게 바꾸면 컴파일 에러도 없고 값 할당도 정상적으로 이루어지며
    출력또한 이상 없습니다.

    그런데 재생각에는 이렇게 해야 정상적인 코드인듯 한데 이상하게 에러가 나옵니다.
    *(int*)vp = (int*)malloc(sizeof(int));

    에러 내용은 'int*의 자료형을 int 자료형에 할당 할 수 없다' 입니다.
    정수형 자료형을 가지는것은 **(int**)vp이지 
    *(int*)vp는 정수형이 아니라 정수형 포인터의 자료형을 가지고 있을텐데

    왜 컴파일러는 *(int*)vp가 정수형이라고 하는걸까요??

    그래서 결론적으로 우변에서도 정수형 포인터가 아닌 정수형을 반환하기 위해

    (int)malloc(sizeof(int));
    이렇게 캐스팅 연산자를 (int)로 해야되는데

    (int*)malloc(sizeof(int));
    왜 이렇게 하면 에러가 나는건지....
    144 void 포인터에 대해서 질문좀... [새창] 2015-07-14 14:55:09 0 삭제
    생각꿈틀// 대입부분이랑 호출부분에서
    **(int**)vp = 5;
    printf("%d", **(int**)vp);
    이부분에 대해서 말씀 하시는 거면 아무이상 없지 않나요??

    vp가 일반 포인터이긴 하지만
    이중포인터처럼 일반포인터의 주소를 포인트 중이기 때문에
    이중 포인터화 시켜서 사용할 수 있는걸로 알고 있습니다.
    실제로 주석친 부분 지우고 코드만 조금 변경시켜도 컴파일, 값 호출이 이상없이 잘되구요

    http://www.soen.kr/lecture/ccpp/cpp1/10-4-4.htm
    143 동적으로 할당된 메모리는 sizeof로 구할수 없나요?? [새창] 2015-07-11 18:24:06 0 삭제
    2차배열은 모든 요소의 주소가 연결되어 있기 때문에 sizeof로 계산 가능 하지만
    포인터 배열은 각 부분 배열의 시작주소가 다르기 때문이군여

    그리고 sizeof는 그 값을 컴파일 이전에 얻어 내는데 동적메모리 할당은 컴파일 이후에 메모리를 할당하므로
    포인터의 크기인 4를 반환하는군요... 친절한 답변 감사합니다!!
    142 동적으로 할당된 메모리는 sizeof로 구할수 없나요?? [새창] 2015-07-11 14:05:12 0 삭제
    1 저도 그거 보고 질문올린건데 봐도 시원하게 이해되는 기분이 아니더군요....
    141 동적으로 할당된 메모리는 sizeof로 구할수 없나요?? [새창] 2015-07-11 13:57:20 0 삭제
    오타 arrr[i]에서 출력되는 값은 10이 아니라 20입니다.
    140 포인터를 이중포인터로 잠시 바꿔 사용한다?? 이게 뭔 뜻인지.... [새창] 2015-07-09 23:43:49 0 삭제
    해결됐습니다.

    **(int**)vp를 통해서 vp를 통해 ip가 가리키는 값을 출력하는게 맞네요

    재가 코드를 좀 안맞게 짠거구요

    vp가 void *의 일중포인터 이긴 하지만 결국 포인터를 가리키는 중이므로

    이중포인터처럼 사용할 수 있는거구요

    진짜 c는 기본적인것도 어느정도 배웠다고 착각하는순간 이상한데서 막히네요 ㅠㅠ



    [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [다음10개▶]

     
    단축키 운영진에게 바란다(삭제요청/제안) 운영게 게시판신청 자료창고 보류 개인정보취급방침 청소년보호정책 모바일홈