K.Maebashi's BBS

ご自由に書き込んでください。雑談も可。
テスト書き込みの類はテスト用掲示板にどうぞ

[日付順表示] [日付順インデックス] [スレッド順インデックス]

新規投稿 | 開設者ホームページへ戻る | ヘルプ

[1473] 質問
投稿者:高校生
2009/11/18 11:54:00

util.cについて教えてください。 /* BUGBUG CRB_NativeFunctionProc *     .     . */ とコメントにしたのはなぜでしょうか。 /*FALLTHRU*/というのは何かの指令なのですか。 C ソースコード検査プログラムの lint と関係ありますか。
[この投稿を含むスレッドを表示] [この投稿を削除]
[1475] Re:質問
投稿者:(ぱ)こと管理人
2009/11/21 01:33:54

>util.cについて教えてください。 >/* BUGBUG >CRB_NativeFunctionProc * >    . >    . >*/ >とコメントにしたのはなぜでしょうか。 おそらくは昔はネイティブ関数とcrowbarの関数を別々の連結リストで 管理していたところ、あるとき一本化して、この関数だけ残骸として 残ったようです。無視してください。 リリース前にはきれいにしておくべきでした。すみません。 >/*FALLTHRU*/というのは何かの指令なのですか。 >C ソースコード検査プログラムの lint と関係ありますか。 lintと関係あります。 Cのswitch caseというのは、「breakを書かないと下に落っこちていく」という とんでもない仕様になっているので、よくbreakを書き忘れてはまる人が いるわけです。そこでlintはそれを検出する機能があるわけですが、 といって、本当に「下に落っこちていく」動きにしたい場合に警告が出て しまったのでは困りますので、その警告を抑止するコメントが/* FALLTHRU */です。 とはいえいまどき昔ながらのUNIXのlintを使っている人は少ないでしょうし、 gccとかだと無視するようなのであまり意味はないかもしれませんが。
[この投稿を含むスレッドを表示] [この投稿を削除]