kagamihogeの日記

kagamihogeの日記です。

2006-12-01から1ヶ月間の記事一覧

warning には意味がある - 2

先のエントリの続き的な内容。今回は動作不良ではなく、C の懐の深さを垣間見ることになりました。とりあえずコード。int aresore1(int *foo, int *var) {...} int aresore2(int *foo, int *var) {...}先に書いたエントリのコードの特徴(関連する関数をまと…

warning には意味がある

昨日のとおりすがり氏のコメントより これでfdが型チェックにひっかからない辺りが…… 型チェック、でもう一件ヒドイ目にあったのを思い出したのでその件について。確か、その日も「なんだかよくわからないけど落ちるのでデバック手伝って」という指令を受け…

どんな使われ方をするかは分からない

今日も今日とて他人様の書いた素晴らしいコード*1のデバッグ。本日俺を最高に「ハイ!」ってやつにさせてくれたコードはこちら。int fd; fd = hogeDeviceOpen(&fd, READ_ONLY);hogeDeviceRead(fd, ...);色々省いてるんで分かり辛いけど、やってることは単純…

電子メールめんどくさい

女子高生のようなメールのやりとりをしていたわけですが、つい先日新しく命令を受けた仕事は、関係する担当者さんが徒歩 5 歩にいることが判明。これでメンドクサイメールのやり取りはかなり減る、というか何かある度に席まで押しかける方式に勝手に切り替え…

きになる if 文

下のような if 文はなんとなくきになる。if (hoge_status == READY_OK) { // ステータスが OK のときの処理 }C に限らずこのテのフラグチェックをする if 文はありがちだけど、やっぱり気になる。if (is_hoge_status_ready(hoge_status)) { ... }メソッド名…

コンパイルで防げるものは防ぎたい

中々見つからなかったバグがようやく判明したのでそのメモ。とりあえずソースコード。hoge1.cextern int func_hoge1(int a, int b, int c) { //... }hoge2.cint func_main() { func_hoge1(20, 30); }func_hoge1 の引数は 3 つだが、func_main でそれを呼び出…

new という名の変数

今日見かけたソースコード。HOGE_STRUCT* new;new = construct_hoge();C なんで new は変数名として使える。使えるけど・・・違和感バリバリだ・・・。

どうでもよくはないけど 2

CVS に segmentation fault 起こすソースコードを(ry

ソースコードの距離

関連性の高い関数とか変数とかはできるだけ近い場所に置いてほしいなぁ、と思うのは読み手のワガママかしらん。[hoge.c]void init_sub1(){...}; void init_sub2(){...}; void init_sub3(){...};void init(){...}; void exit(){...};init から init_sub1 〜 3…

どうでもよくはないけど

CVS にコンパイルできないソースを上げないでくださいまし

メソッドに対応関係を持たせる

バグ出した、ってわけでもないんだけど。ちょっと気になったコードがあったので。amazon:Code Complete第2版〈上〉―完全なプログラミングを目指して曰く、 〜良いルーチン名のガイドラインより ■正確な反意語を使用する 反意語の命名規則を設けると、一貫性…

こういうメールばっかはツライ

今いるプロジェクトは開発チーム間が物理的に離れてるので、下のような短いメールが ML にものすごい勢いで流れてきます。 ○○の件は××でよろしいでしょうか? > ○○の件は××でよろしいでしょうか? はい 女子高生のメールじゃあるまいし・・・。でも、電話がない…