Richard Reese:詳説 C ポインタ |
作成日:2020-08-20 最終更新日: |
C 言語のポインタについて説明する。
少々昔の状況かなと思うところがある。たとえば、p.42 は次のとおり書かれている
malloc 関数が宣言されているヘッダファイルを include し忘れた場合、 キャストした個所に対してコンパイラは警告を出します。 デフォルトでは C 言語の関数は int を返すものととして定義されています。
確かこの記述は古いもので、今は int を返すという定義はないと思われる。 なお、malloc 関数が宣言されているヘッダファイルは普通 stdlib.h である。 そこを書いてほしいとは思った。
なお、p.46 の訳注にあるように、calloc は malloc + memset より速く動作する。 なので、利用者の立場としては、malloc より calloc を積極的に使うのがよいと思う。 malloc で確保したメモリ領域は何が入っているかわからないからだ。
なお、calloc の関数プロトタイプは次のとおりである。
extern void *calloc(size_t nemlements, size_t bytes)
第1の引数は配列の数であり、第2の引数は配列を構成する要素が占めるバイト数である。 私はよくこれを逆にして覚えているので、注意しないといけない。
p.161 下から 3行目、コードが
delete(&linkedList, node);
となっているが、
delete(linkedList, node);
が正しい(& は不要)。
これは、本書に関するオライリーのページ
https://www.oreilly.co.jp/books/9784873116563/
の正誤表には載っていない。
書 名 | 詳説 C ポインタ |
著 者 | Richard Reese |
訳 者 | 菊池 彰 |
発行日 | 2013 年 12 月 27 日 |
発行元 | オライリー・ジャパン |
発行元 | オーム社 |
定 価 | 2200円(税別) |
サイズ | |
ISBN | 978-4-87311-656-3 |
備 考 | 越谷市南部図書室で借りて読む |
NDC | 007.6 |
まりんきょ学問所 > コンピュータの部屋 > コンピュータの本 > C言語 > Richard Reese:詳説 C ポインタ