アプリ版:「スタンプのみでお礼する」機能のリリースについて

【環境】
WindowsXP(SP2)
VisualStudio2005++(MFC)

タイトルの通りなんですが、ある条件の時に

BOOL flg;
の値をtrueの場合は「false」に、
falseの場合は「true」にしたいです。

参考書やネットを探してみたんですが、
「これ!」ってのが見つけられず(そもそも何でググれば良いのか分からない・・・。)、どなたか教えてくださいませんか?

if(flg)
flg = FALSE;
else
flg = TRUE;

これじゃ汚いですよね・・・?

A 回答 (2件)

flg = !flg;



否定した値(つまり、反対の値)を取ればよい。
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます!

お礼日時:2010/03/03 15:36

BOOLはWinDef.hでintのtypedefとして


定義されていますが

falseがFALSE(0)固定で
trueがTRUE(1)固定にするなら

flg^=1; //flg^=TRUE;

で大丈夫です。
0以外の何かが入っているけど1とは限らない状態がtrueで、そこから
逆のFALSEかTRUEにするなら

flg=!flg;

でいいと思います。
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます!

ご丁寧に色々記載いただき、感謝感謝ですm(__)m

お礼日時:2010/03/03 15:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A