タグ

c++に関するnippondanjiのブックマーク (2)

  • C言語最大の欠点

    1980年代、筆者が高校生・大学生だったころに「C言語がすごい」という話を友人から聞いていた。しかし、当時の筆者が触れていたのはMSXパソコンのBASICと大学の汎用機のFortranくらいだった。C言語をやっと手に入れたのは、1992年の暮れである。清水の舞台から飛び降りるような気持ちでBorland C++の大箱を買って帰った。 それから20年近くが経過した今でも、C言語は「最強のプログラミング言語」と呼ぶべきポジションを確保し続けている。UNIXオペレーティングシステムとC言語が世界に与えたインパクトの大きさは、実に大きなものがあった。 ただ、C言語を学習したり評価したりする際には、C言語の大きな欠点を知っておく必要があるだろう。筆者が考えるその大きな欠点とは、「文字列の扱いが非常に面倒」であることだ。 「バッファオーバーフロー」を回避するのは大変 例を示そう。図1はC言語で記述した

    C言語最大の欠点
    nippondanji
    nippondanji 2010/10/22
    推してるツールがVisual Studio 2010ってのが泣けるな。
  • 第4回 前提条件の記述 | gihyo.jp

    これまで説明してきたDスクリプトでは、モジュール名や関数名といった単位で採取対象を特定していました。 今回は、もっと複雑な採取対象の絞り込みを可能とする、前提条件の記述方法について説明したいと思います。 特定関数の呼び出し契機での絞り込み 連載でこれまで例示してきたDスクリプトは、特定の関数から引数や戻り値を採取する一部の例外を除いては、基的に全ての関数フローを採取するものでした。 しかし、必ずしも全ての関数フローの採取が必要なケースばかりではありません。むしろ全ての関数フローを採取した場合、以下のようなデメリットが生じます。 採取結果の中から調査対象を特定するのが難しくなる 採取結果の記録に必要なディスク領域が増加する このようなデメリットを無くすためには、採取範囲の絞り込みが必要です。 たとえば、リスト1のプログラム(show_nesting)を想定してみましょう。 リスト1 関数

    第4回 前提条件の記述 | gihyo.jp
  • 1