|
http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=8 [복사]
[서적 정보]
-
[리뷰]
이 서적은 독특하게도 "C언어 포인터"라는 주제 하나만을 집중적으로 다루고 있는데요,
제가 이 책을 읽기 전에 기대했던 것들은 다음과 같습니다.
- 일반 C언어 서적에선 얻을 수 없는 포인터 관련 지식을 전달하는가?
- 혹은 포인터를 더욱 쉽고 효과적인 방법으로 설명하는가?
우선 도입부는 포인터와 관련된 공감할 수 있는 이야기가 나와서 재밌게 읽어나갔습니다.
하지만 뒷쪽으로 갈 수록 점점 몰입도 하락.. OTL
그 이유는 다른 C언어 서적에서의 포인터 설명과 비교했을 때 크게 다른 점을 찾지 못했기 때문입니다.
이 서적에서 설명하는 내용을 요약하면,
1. 포인터란?
2. 1차원 배열 포인터
3. 2차원 배열 포인터
4. 문자열 포인터
5. 이중 포인터
6. 포인터의 형변환
7. VOID형 포인터
8. 포인터 인자
9. 함수 포인터
10. 구조체 포인터
이렇게 10개의 파트로 요약할 수 있는데, 사실 이들은 다른 C언어 입문서서도 모두 다루고
있는 것들입니다. 예를 들어, "난 정말 C" 서적이나 "A Book on C"만 보더라도 위의 내용을
모두 포함하고 있습니다.
그렇다고 다른 책보다 "더 쉽고 자세하게" 설명하느냐.. 사실 그런 느낌도 잘 받지 못했습니다.
오히려 함수포인터 같은 경우엔 다른 서적에 비해 너무 간단하게 설명되어 있습니다.
(해킹 기술 중 함수 Hooking을 이해하려면 함수 포인터에 대해 잘 알아야 합니다.)
그렇기 때문에 다른 C언어 서적의 포인터 챕터를 충분히 소화하신 분들은 굳이 이 책을
다시 공부하지 않으셔도 될 것 같단 의견입니다.
반면에 포인터의 전반적인 복습을 원하시거나 포인터의 이해에 있어 뭔가 2% 부족하다 느끼시는
분들껜 많은 도움이 될 것 같습니다.
====== 평점 =======
편집 ★★★★☆
구성 ★★★★★ : 단계적인 포인터 학습
쉬운 설명 ★★★☆☆
깊이 ★★★★☆
동기 부여 ★★★☆☆
저자의 열정 ★★★☆☆
독창성 ★★★★★ : 포인터라는 주제를 집중적으로 다룬 서적
=================
P.S 더불어 제가 포인터를 공부할 때 큰 도움이 되었던 임인건님의 포인터 강좌도 추천해 드립니다.
http://www.hackerschool.org/HS_Boards/data/Lib_prog/Tc1.txt ~ Tc6.txt
P.S2 이 책을 읽으면서 점점 몰입도가 떨어졌던 또 다른 이유는 약간 납득할 수 없는 설명들이 고개를
갸우뚱하게 만들었기 때문인데, 예를 들면 "Segmentation Fault는 다른 프로그램이 사용하는 영역을
건드렸기 때문에 나타나는 오류다", "UNIX 시스템에서의 결과를 따르는 이유는 C언어가 UNIX를 위해
만들어진 언어이기 때문이다 ", 혹은 "운이 좋은 날엔 에러가 안 나고 없는 날엔 에러가 난다" 등이 이에
해당합니다.
순서대로 부연 설명을 하자면,
- 현대 OS는 보호모드를 사용하기 때문에 Segmentation fault와 다른 프로그램과는 관련이 없습니다.
이는 메모리 접근 권한(읽기/쓰기/실행)이나 메모리 할당 여부와 관련이 있습니다.
- C언어가 만들어진 시점보다는 현재의 독자들이 많이 사용하는 환경을 기준으로 설명이 되어야하지
않을까 싶습니다.
- 포인터 비초기화 시의 에러 유무는 해당 포인터 변수가 선언되기 이전 함수의 스택 프레임 값들의
영향을 받습니다. (ex> __libc_start_main이나 CRTmain 함수에서 사용된 스택 값들)
|
Hit : 7993 Date : 2011/05/15 01:43
|