画像処理 その12at TECH
画像処理 その12 - 暇つぶし2ch269:デフォルトの名無しさん
09/09/01 13:51:44
>268
>267はたぶん演算子の優先順位を気にしているのだと思う
&&より&の方が優先順位が高いのは昔からの名残なので
先にattributes->valuemask & XpmColorSymbolsが評価されて
次にattributes && (上記の式の評価値)が評価される
よって、attributesが0(その環境にあったヌルポインタ定数)

いやまったくの嘘を書いてしまった
if (attributes && attributes->valuemask & XpmColorSymbols) {
はコンパイラによって
if (((attributes) != 0) && (attributes->valuemask & XpmColorSymbols)) {
のように解釈される
よって、&より!=の方が優先順位が高いのでattributesが0(その環境にあったヌルポインタ定数)と比較される
つまり、attributesがヌルポインタである時はattributes->valuemask & XpmColorSymblosは評価されない
つなわち、attributesがヌルポインタであるときにそのデリファレンスは発生しないので定義通りに動作する
ここに一切の未定義動作は含まれない
URLリンク(c-faq.com)


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch