2011-01-01から1年間の記事一覧

3-2 共有体

共用体は、複数の変数や配列を同じ記憶域を使用するようにまとめたもの。各項目に同時にアクセスすることは出来ない。 以下に説明するような用法がある。 3.3.1 記憶域の効率的な使用同じ記憶域を複数の目的に使用し、メモリを節約するために共用体を使う。…

3-2 構造体

-内容のまとめ 書いてあった内容の概要 構造体は・・・ データ要素のグループ化できる 関数からの戻り値を複数返すことが出来る データ構造を表現することが出来る オブジェクト指向プログラミングが出来る -練習問題 (3.6)構造体に配列を埋め込む方法を使…

3-1 ポインタ

-内容のまとめ 書いてあった内容の概要ポインタでリンクデータ構造を作れる!(3.4節で詳説) データ構造の動的割り当て # define new(type) (type * ) calloc(sieof(type), 1)というマクロを定義すると便利参照呼び出し関数の引数で、構造体はポインタで参…

-内容のまとめ 書いてあった内容の概要 'a' - 'A'はascii以外は問題が生じるからよくない p* - '0'は文字から整数値を求めるイディオム コードの数式が複雑な論理で構成されている場合は、ドモルガン等で式を簡略化してみる 短絡評価法(&&は偽の式が現れた…

-内容のまとめ 書いてあった内容の概要 -練習問題 gotoステートメントを使用しているコードを5つ探し出し、用途>別に分類しなさい。(前述した用途ごとに少なくとも1つの例が入るようにコードを探し なさい)。それぞれのgotoについて、それをループステー…

-内容のまとめ 書いてあった内容の概要 'a' - 'A'はascii以外は問題が生じるからよくない p* - '0'は文字から整数値を求めるイディオム コードの数式が複雑な論理で構成されている場合は、ドモルガン等で式を簡略化してみる 短絡評価法(&&は偽の式が現れた…

-内容のまとめ 書いてあった内容の概要です continueはswitchステートメントを無視する。 continue及びbreakはifステートメントに作用しない。 ループの中身が空でいい場合、プレースホルダとしてcontinueが置かれることがある。 Javaではbreak、continue文…

-内容のまとめ 書いてあった内容の概要ですexpandコードリーディングの続き。 getstops関数解析 for文の詳説 繰り返す回数に注意3つの式の評価について無限ループ形成-練習問題 (2.16) C系の言語のforステートメントはとても柔軟性がある。本書に掲載されて…

-内容のまとめ 書いてあった内容の概要ですexpandコードリーディングの続き。 switch文のbreak;抜けに注意 break;を意図的に省いて以降の処理を継続するときは、/*FALL THROUGH*/とコメントしておこう 予想外の値を見過ごすことがあるので、default文は必ず…

-内容のまとめ 書いてあった内容の概要ですexpandコードリーディングの続き。 getoptのマニュアル 関数に出会ったら、マニュアルを読むようにするといいよ!インデントと{}について WHile*1 != EOF)に着目-練習問題 現在使用しているエディタは対応するカッ…

-内容のまとめ expandコマンドを例にとって、static宣言の有無による関数及び変数の振る舞いについて解説している: ・staticをつけて宣言されたグローバル変数・関数は、他のファイルにある関数からは見えなくなる。 ・誤った宣言をされた関数が別のファイル…

-内容のまとめ 書いてあった内容の概要ですechoプログラムのソースファイルを読む getopt関数が便利でみんな使ってるが、必ずしも全てのオプションを処理できない。 echoのオプション処理はgetopt関数が使えない。 イディオム:#define STREQ(a, b) (*(a) ==…

このブログは、Code Reading の読書会用です。 Code Readingで読んだ内容のまとめ、練習問題の解答を載せます。読書会の本 : タイトル : Code Reading -オープンソースから学ぶソフトウェア開発技法 出版社 : 毎日コミュニケーションズ (2004/6/1) ISBN-10 :…