考えるよりも、動かして実行結果を確認した方がずっと良いです。
昨日まで参加していた『テスト駆動開発による組み込みプログラミング 〜 C/C++言語とオブジェクト指向によるアジャイルな設計』研修で、私がC言語の仕様を知らないばかりにシフト演算で詰まり、苦肉の策で書いたコードがコチラ。
TEST(Flash, debug) { CHECK(1<<7 == 0x80); }
ちなみに James さんはこのコードを気に入ってくれたらしく、研修中2度に渡りお褒めの言葉をいただきました。(ただC言語に詳しくなかっただけなのに…w)
せっかくテストハーネスがあるんだから、分からなければ試してみればいいんですよね。すぐ結果分かるし。
考えるな、動かせ!
*1:テストケース名を "debug" としたのは、James Grenning さんが「やるな!」と仰っていた「Debug-Later Programming」からもじったものです。