タグ int a
人気順 5 users 10 users 100 users 500 users 1000 usersCコンパイラをスクラッチから開発してみた(日記) - Qiita
以前に8ccというCコンパイラをゼロからひとりで開発していたときのログです。40日でセルフコンパイルできるところまで到達しています。日付はすべて2012年です。コードとヒストリはすべてGitHubで見れます。 3月4日 というわけでコンパイラを作っているわけだけど、1000行くらい書いたらそれなりに動き始めてきた。こんなのも動くし: int a = 1; a + 2; // => 3 こういうのも... 続きを読む
コードのネストを深くするな | anopara
昔の記事にも書いたのだが、ソースコードのネストは小さければ小さいほど読みやすい。 ではどうするか。一つは、returnできるところでさっさとreturnするというのが良いだろうと思う。 たとえば、 public int func1(int a, int b) { int result; if (a > 10) { if (a > 20) { if (a > 30) result = b; else... 続きを読む
C99の配列初期化に潜む罠 - monoの開発ブログ
C99では配列初期化が拡張されています。一見便利そうなのですが、特大の罠が仕込まれていてかなりの時間を無駄にしたのでとても残念な気持ちです。 ここで話すC99の拡張とは、配列の初期化に要素指示子を利用できるようになったことを指しています。 int a[] = { [3] = 1, [7] = 2, }; こんな感じで記述すると、a[3] が 1、a[7] が 2 で初期化されます。 では、以下のよ... 続きを読む
いやなブログ - 浮動小数点演算ではまった話
浮動小数点演算ではまった話 浮動小数点演算のありがちな問題ではまりました。 いろいろ調べているうちに x86 特有のちょっとおもしろい 現象に遭遇したので紹介したいと思います。 パーセンテージの計算 簡単な C のプログラムでパーセンテージを計算しようと思い、 次のようなコードを書きました。 int x, y; ... int a = (double)x / y * 100; int a = x ... 続きを読む