タグ

cとc++に関するt2y-1979のブックマーク (4)

  • Benchmarking low-level I/O: C, C++, Rust, Golang, Java, Python

    This post is a continuation of Measuring network service performance. When my computer doesn’t have an Internet connection, I find that there is not much I can do with it. Indeed, we mostly use our laptops and smartphones to access information stored or generated somewhere else. It’s even hard to imagine the utility of non-user facing apps without network communication. While the proportion of I/O

    Benchmarking low-level I/O: C, C++, Rust, Golang, Java, Python
  • rr: lightweight recording & deterministic debugging

    what rr does rr aspires to be your primary C/C++ debugging tool for Linux, replacing — well, enhancing — gdb. You record a failure once, then debug the recording, deterministically, as many times as you want. The same execution is replayed every time. rr also provides efficient reverse execution under gdb. Set breakpoints and data watchpoints and quickly reverse-execute to where they were hit. rr

  • [迷信] とりあえず memset で初期化 | 株式会社きじねこ

    よく見かけるコードですが、上のコードは、必ずしも期待した結果になるとは限りません。なぜなら、double 型やポインタ型は、これらを構成する全ビットが 0 になったとしても、オブジェクトの値が 0 になるかどうかは分からないからです。 確かに、ほとんどの処理系では上記のコードでも問題なく、そして期待通りに動作します。しかし、それはあくまでも"たまたま"動いているに過ぎません。そうした不安定な要素をなくすために行った初期化が、かえってコードを怪しくしてしまっているのです。 単に、集成体の全要素をゼロクリアしたいだけであれば、 とすれば十分です。こう書くと、おそらく次のような反論が返ってくることでしょう。「その方法では、構造体の詰め物がゼロクリアされない」と。しかし、構造体の詰め物にアクセスして、言語仕様上保証される結果を期待することには無理があります。 構造体の詰め物をゼロクリアしたい理由は

    t2y-1979
    t2y-1979 2014/10/10
    知らんかったなぁ
  • Linux愛好者の独り言 Cutterのとても簡単な使い方

    Linux愛好者の独り言」は,Linuxやプログラミングの,楽しさや初心者向け情報を配信するBLOGです。 CutterはC/C++用の単体テストユニットフレームワーク(所謂xUnit)だ。 評判が良いので,以前から使いたかったのだが,いかんせん,家のチュートリアルが丁寧すぎてわかりにくく,使い方がわからなかった。 このチュートリアルでは,automake等を用いた格的な使い方が書かれているので, てっきりCutterを使う時はいつもこのくらいの準備が必要なのかと思っていた。 ほんのちょっと,テストコードを書いて開発の補助にしたいだけなのに,いちいちMakefile.amだのconfigure.acだのを作るのは面倒だ。 (これが面倒でない人間はIDEなんて使わないだろう) 毎度,このチュートリアルに従うくらいなら,cxxTestでもを使うほうがましだと思った。 だが,どうやら,

    t2y-1979
    t2y-1979 2011/11/15
    まずはちょっと動かしたいよね
  • 1