objective-c - BOOL變數在if條件語句的理解(OC)
怪我咯
怪我咯 2017-04-24 09:13:37
0
2
738

在一個計算器的邏輯實作檔裡,先宣告了一個BOOL類型變數
BOOL isPlus;
然後在calculator的邏輯方法裡,條件判斷

if (isPlus) {
        numDisplay =leftNum +rightNum;
        int tmp = (int) numDisplay;
        if(tmp == numDisplay)
            myTotal.text = [[NSString alloc] initWithFormat:@"%d",tmp];
        else
        myTotal.text = [[NSString alloc] initWithFormat:@"%f",numDisplay];
        NSLog(@"++leftNum is %f,rightNum is %f",leftNum,rightNum);

方法中有定義 isPlus = false;

其中 if (isPlus) 是指其條件為false的情況下,執行下面語句嗎? 我記得OC裡if條件為true才會執行啊,難道是指isPlus = false這個語句為true?
新手對這個邏輯不是很理解,求指導,謝謝!

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回覆(2)
阿神

if(表达式){ 语句 },其中表达式的返回类型为Bool且当其为真的话执行语句,if(isPlue)相当于isPlue == true,当这句话为真,执行下面的语句。而你方法中的isPlus = false只是一個賦值語句,跟下面的if條件判斷沒有關係。

大家讲道理

if (isPlus) === if(isPlus==YES)

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板