간편결제, 신용카드 청구할인
PAYCO(페이코) 최대 5,000원 할인
(페이코 신규 회원 및 90일 휴면 회원 한정)
네이버페이 1%
(네이버페이 결제 시 적립)
북피니언 롯데카드 30% (15,120원)
(최대할인 3만원 / 3만원 이상 결제)
EBS 롯데카드 20% (17,280원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 NEW 우리V카드 10% (19,440원)
(최대할인 3만원 / 3만원 이상 결제)
인터파크 현대카드 7% (20,090원)
(최대할인 3만원 / 3만원 이상 결제)
Close

C 포인터의 이해와 활용 : 메모리 관리의 핵심 기술

원제 : Understanding and Using C Pointers
소득공제

2013년 9월 9일 이후 누적수치입니다.

판매지수 783
?
판매지수란?
사이트의 판매량에 기반하여 판매량 추이를 반영한 인터파크 도서에서의 독립적인 판매 지수입니다. 현재 가장 잘 팔리는 상품에 가중치를 두었기 때문에 실제 누적 판매량과는 다소 차이가 있을 수 있습니다. 판매량 외에도 다양한 가중치로 구성되어 최근의 이슈도서 확인시 유용할 수 있습니다. 해당 지수는 매일 갱신됩니다.
Close
공유하기
정가

24,000원

  • 21,600 (10%할인)

    1,200P (5%적립)

할인혜택
적립혜택
  • I-Point 적립은 출고완료 후 14일 이내 마이페이지에서 적립받기한 경우만 적립됩니다.
  • 추가혜택
    배송정보
    •  당일배송을 원하실 경우 주문시 당일배송을 선택해주세요.
    • 서울시 강남구 삼성로 512변경
    • 배송지연보상 안내
    • 무료배송
    • 해외배송가능
    주문수량
    감소 증가
    • 이벤트/기획전

    • 연관도서

    • 사은품(5)

    출판사 서평

    포인터와 메모리에 관한 포괄적이고도 광범위한 이해를 제공한다!
    C 포인터와 메모리 관리에 관한 확고한 이해로 여러분의 프로그래밍 실력을 향상시킬 수 있다. 이 책은 포인터가 어떻게 메모리에 대한 동적인 관리 메커니즘과 데이터 구조에 대한 향상된 지원, 그리고 하드웨어에 대한 접근 방법을 제공하는지에 대해 배울 수 있는 실용적인 책이다. 저자인 리차드 리스는 책 전반에 걸쳐 메모리 모델을 통해 배열, 문자열, 구조체, 함수 등을 포인터로 다루는 방법을 보여준다.

    포인터의 강력함과 유연함으로 C 언어 완벽 마스터!
    마스터하기는 까다롭지만, 포인터를 이용하면 C 언어가 훨씬 유연하고 강력해진다. 하지만 포인터라는 데이터 타입에 대한 참고 자료가 많지 않다. 이 책은 독자가 입문자이든 숙련자이든지에 상관없이 C/C++ 프로그래머이거나 개발자라면 참조할 수 있는 폭넓은 정보를 담고 있다.

    이 책에서 다루는 주요 주제는 다음과 같다.
    - 다양한 포인터 타입의 선언 방법과 포인터에 관한 전반적인 소개
    - 동적 메모리 할당과 해제, 그리고 메모리 관리 기법의 대안
    - 함수에 데이터를 전달하고 반환받는 기술
    - 포인터와 관련된 배열의 핵심적인 측면
    - 문자열의 기초와 문자열에서의 포인터 활용
    - 포인터가 버퍼 오버플로 같은 보안 문제를 일으키는 이유
    - 불투명(opaque) 포인터, 유계(bounded) 포인터, 그리고 restrict 키워드의 활용 등 다양한 포인터의 활용 기법

    목차

    1장 시작하기
    포인터와 메모리
    포인터를 잘 알아야 하는 이유
    포인터 선언하기
    포인터 선언을 읽는 방법
    주소 연산자
    포인터 값 출력하기
    간접 참조 연산자로 포인터 역참조하기
    함수 포인터
    Null의 개념
    포인터의 크기와 데이터 타입
    메모리 모델
    사전 정의된 포인터 관련 데이터 타입
    포인터 연산자
    포인터 산술 연산
    포인터 비교
    일반적인 포인터 사용
    다중 수준 간접지정
    상수와 포인터
    요약

    2장 동적 메모리 관리
    동적 메모리 할당
    메모리 누수
    동적 메모리 할당 함수
    malloc 함수 사용하기
    calloc 함수 사용하기
    realloc 함수 사용하기
    alloca 함수와 가변 배열
    free 함수로 메모리 반환하기
    해제된 포인터에 NULL 할당하기
    이중 해제
    힙 메모리와 시스템 메모리
    프로그램 종료 시 메모리 해제
    댕글링 포인터
    댕글링 포인터 예제
    댕글링 포인터 다루기
    메모리 누수 탐지 기능
    동적 메모리 할당 기술
    가비지 컬렉션
    리소스 획득 즉시 초기화
    예외 처리기 사용하기
    요약

    3장 포인터와 함수
    프로그램 스택과 힙
    프로그램 스택
    스택 프레임의 구성
    포인터에 의한 전달과 반환
    포인터로 전달하기
    값에 의한 전달
    상수 포인터 전달하기
    포인터 반환하기
    로컬 데이터 포인터
    Null 포인터 전달하기
    포인터의 포인터 전달하기
    함수 포인터
    함수 포인터 선언하기
    함수 포인터 사용하기
    함수 포인터 전달하기
    함수 포인터 반환하기
    함수 포인터의 배열 이용하기
    함수 포인터 비교하기
    함수 포인터 캐스팅
    요약

    4장 포인터와 배열
    배열
    1차원 배열
    2차원 배열
    다차원 배열
    포인터 표기법과 배열
    배열과 포인터의 차이점
    malloc 함수로 1차원 배열 생성하기
    realloc 함수로 배열 크기 조정하기
    1차원 배열 전달하기
    배열 표기법 사용하기
    포인터 표기법 사용하기
    1차원 포인터 배열 이용하기
    포인터와 다차원 배열
    다차원 배열 전달하기
    2차원 배열 동적으로 할당하기
    불연속 메모리 할당
    인접한 메모리 할당하기
    가변 배열과 포인터
    요약

    5장 포인터와 문자열
    문자열 기초
    문자열 선언
    문자열 리터럴 풀
    문자열 초기화
    표준 문자열 연산
    문자열 비교하기
    문자열 복사하기
    문자열 연결하기
    문자열 전달하기
    단순 문자열 전달하기
    상수 문자에 대한 포인터 전달하기
    전달한 문자열 초기화하기
    애플리케이션에 인자 전달하기
    문자열 반환하기
    리터럴 문자열의 주소 반환하기
    동적으로 할당된 메모리 주소 반환하기
    함수 포인터와 문자열
    요약

    6장 포인터와 구조체
    소개
    구조체에 메모리가 할당되는 방법
    구조체 할당 해제 이슈
    malloc/free 오버헤드 회피하기
    포인터와 데이터 구조
    단일 연결 리스트
    포인터와 큐
    포인터와 스택
    포인터와 트리
    요약

    7장 보안 이슈와 포인터의 오남용
    포인터의 선언과 초기화
    부적절한 포인터 선언
    초기화되지 않은 포인터
    초기화되지 않은 포인터 처리하기
    포인터 사용 이슈
    NULL 확인하기
    참조 연산자의 잘못된 사용
    댕글링 포인터
    배열의 범위를 벗어난 메모리 접근
    배열 크기 계산 오류
    sizeof 연산자 오용
    항상 포인터 타입 일치시키기
    유계 포인터
    문자열 보안 이슈
    포인터 연산과 구조체
    함수 포인터 이슈
    메모리 해제 이슈
    이중 해제
    민감한 데이터 지우기
    정적 분석 도구 사용하기
    요약

    8장 기타
    포인터 캐스팅
    특수 목적 주소 접근하기
    포트에 접근하기
    DMA로 메모리 접근하기
    시스템의 엔디안 종류 알아내기
    에일리어싱, 엄격한 에일리어싱, 그리고 restrict 키워드
    유니언을 사용해 여러 방법으로 값 표현하기
    엄격한 에일리어싱 규칙
    restrict 키워드 사용하기
    스레드와 포인터
    스레드 간의 포인터 공유
    함수 포인터를 이용한 콜백 함수 지원
    객체 지향 기법
    불투명 포인터 생성하고 사용하기
    C 언어에서의 다형성
    요약

    본문중에서

    는 중요한 언어로, 오랫동안 광범위하게 사용됐다. C 언어의 중심에는 언어 자체에 많은 유연함과 힘을 제공하는 포인터가 있다. 포인터는 메모리를 동적으로 다룰 수 있는 메커니즘을 제공하고, 데이터 구조를 더 강력하게 지원하며, 하드웨어에 대한 접근을 가능하게 한다. (중략) 포인터는 더욱 깊게 다뤄볼 만한 충분히 복잡한 주제이다. 이 책은 C의 깊은 이해를 위해 꼭 필요한 포인터를 집중해서 다룬다. 이 책에서 다루는 내용을 이해하기 위해서는 문맥에 따라 포인터의 사용과 함께 프로그램 스택(program stack) 및 힙(heap)의 실무 지식이 필요하다. 어떤 지식이든 피상적인 개요에서부터 깊이 있는 직관적인 이해에 이르기까지 다양한 각도로 이해될 수 있다. C에 대한 높은 수준의 이해는 포인터와 메모리 관리의 확실한 이해로 가능해진다.
    (/ p.XIV)

    포인터를 이해하는 열쇠는 C 프로그램에서 메모리가 어떻게 관리되는지 이해하는 데 있다. 결국, 포인터는 메모리의 주소를 담고 있기 때문이다. 메모리가 구성되고 관리되는 방법을 이해하지 못한다면 포인터의 동작 방식을 이해하기 쉽지 않다. 이런 우려를 해소하기 위해, 포인터의 개념을 설명하는 데 필요하다면 어디서든 메모리의 구성에 대해 설명할 것이다. 일단, 메모리와 그 구성 방법을 확실하게 이해하고 나면 포인터를 이해하기가 훨씬 쉽다.
    (/ p.1)

    C에서 동적 메모리 할당은 포인터를 사용하여 좀 더 효과적으로 사용할 수 있다. 동적 메모리를 할당하고 해제하는 데 malloc과 free 함수가 각각 사용된다. 동적 메모리 할당은 크기 조절이 가능한 배열이나 연결 리스트와 큐(queue) 같은 자료구조의 구현에 사용된다.
    (/ p.5)

    포인터의 강력한 기능의 대부분은 동적으로 할당된 메모리를 추적할 수 있는 포인터의 능력에서 기인한다. 포인터를 통한 동적 메모리 관리는 복잡한 자료구조를 조작하는 일을 포함한 많은 일의 핵심이다. 포인터의 이러한 능력을 완벽히 활용하기 위해 C에서 동적 메모리 관리가 어떻게 일어나는지 이해할 필요가 있다.
    (/ p.45)

    포인터는 함수의 기능에 대단히 많은 영향을 미친다. 포인터는 함수로 데이터를 전달하거나 함수에 의해 데이터를 수정할 수 있게 한다. 복잡한 데이터 역시 구조체의 포인터 형태로 함수에 전달되거나 반환될 수 있다. 또, 포인터가 데이터 타입이 아닌 함수의 주소를 가리키는 경우, 포인터는 프로그램의 실행 흐름을 동적으로 제어하는 데 사용될 수 있다.
    (/ p.77)

    배열은 C에 포함된 핵심 데이터 구조다. 배열과 그 사용법을 완벽하게 이해해야만 효율적인 애플리케이션을 개발할 수 있다. 배열과 포인터의 사용법을 잘못 이해하면 찾기 어려운 오류가 나타날 수 있고, 애플리케이션이 최적의 성능을 발휘하지 못한다. 배열과 포인터의 표기법은 서로 밀접하게 연관되어 있고, 정확한 컨텍스트(context)하에서는 맞바꾸어 사용할 수 있다.
    (/ p.107)

    관련이미지

    저자소개

    리차드 리스(Richard Reese) [저] 신작알림 SMS신청 작가DB보기
    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    산업과 학계 모두에서 근무했다. 17년 동안 통신 및 항공 산업에서 근무했고, 연구 및 개발, 소프트웨어 개발, 감독, 교육을 비롯한 분야에서 다양한 능력을 제공했다. 현재 산업에서의 다년간 경험을 가르침에 적용할 수 있는 기회를 준 탈튼 주립대학교(Tarleton State University)에서 학생들을 가르치고 있다.
    다수의 자바 책과 C 포인터 책을 출간했다. 가까운 주제에 대해 간결하고 쉬운 접근 방식을 사용한다. EJB 3.1, 자바 7과 자바 8로 업데이트, 인증, 함수형 프로그래밍 jMonkeyEngine, 자연어 처리 등 다양한 자바 관련 도서를 저술했다.

    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    IMF 이후 벤처 붐이 일던 2000년 우연찮은 계기로 IT업계에 뛰어들어 17년이 넘는 시간 동안 계속 이 업계에 몸담아 왔다. 한 여자의 남편이자 한 아이의 아버지로서 어떻게 하면 더 멋지게 살 수 있을지 고민하면서도 현실과의 괴리에 몸서리치는 중이다. 옮긴 책으로는 [디자인 오브 디자인]이 있으며, 함께 옮긴 책으로는 [C 포인터의 이해와 활용], [윈도우 파워셸 3 시작하기]가 있다.

    생년월일 -
    출생지 -
    출간도서 0종
    판매수 0권

    수능 모의고사 중에 교실을 뛰쳐나왔던 그 날 이후로 지난 17년간 개발자로 일했으며, 지금은 디스코(www.disco.re) 서비스를 개발 중이다. 옮긴이에 대한 소식은 ulzima.com에서 볼 수 있다. 옮긴 책으로는 [봇 설계는 이렇게 한다], [자바 네트워크 프로그래밍(제4판)]이 있으며, 함께 옮긴 책으로는 [러닝 스칼라], [리뷰의 기술], [C 포인터의 이해와 활용], [윈도우 파워셸 3 시작하기(제2판)]가 있다.

    이 책과 내용이 비슷한 책 ? 내용 유사도란? 이 도서가 가진 내용을 분석하여 기준 도서와 얼마나 많이 유사한 콘텐츠를 많이 가지고 있는가에 대한 비율입니다.

      리뷰

      0.0 (총 0건)

      기대평

      작성시 유의사항

      평점
      0/200자
      등록하기

      기대평

      0.0

      교환/환불

      교환/환불 방법

      ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청함, 1:1 문의 게시판 또는 고객센터(1577-2555) 이용 가능

      교환/환불 가능 기간

      고객변심은 출고완료 다음날부터 14일 까지만 교환/환불이 가능함

      교환/환불 비용

      고객변심 또는 구매착오의 경우에만 2,500원 택배비를 고객님이 부담함

      교환/환불 불가사유

      반품접수 없이 반송하거나, 우편으로 보낼 경우 상품 확인이 어려워 환불이 불가할 수 있음
      배송된 상품의 분실, 상품포장이 훼손된 경우, 비닐랩핑된 상품의 비닐 개봉시 교환/반품이 불가능함

      소비자 피해보상

      소비자 피해보상의 분쟁처리 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 따라 비해 보상 받을 수 있음
      교환/반품/보증조건 및 품질보증 기준은 소비자기본법에 따른 소비자 분쟁 해결 기준에 따라 피해를 보상 받을 수 있음

      기타

      도매상 및 제작사 사정에 따라 품절/절판 등의 사유로 주문이 취소될 수 있음(이 경우 인터파크도서에서 고객님께 별도로 연락하여 고지함)

      배송안내

      • 인터파크 도서 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다

      • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

      • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능하여, 인터파크 외 타업체 배송상품인 경우 발송되지 않을 수 있습니다.

      • 배송비

      도서(중고도서 포함) 구매

      2,000원 (1만원이상 구매 시 무료배송)

      음반/DVD/잡지/만화 구매

      2,000원 (2만원이상 구매 시 무료배송)

      도서와 음반/DVD/잡지/만화/
      중고직배송상품을 함께 구매

      2,000원 (1만원이상 구매 시 무료배송)

      업체직접배송상품 구매

      업체별 상이한 배송비 적용