我最初認爲下面的代碼會返回0,我的問題是否有一個函數可以用來在這裏只接收零/積極的結果?返回零或正數?
NSUInteger pruneSize = 5 - 20; // Returns: -15
目前我只是自己檢查結果,但想知道我是否錯過了一些簡單的東西。
NSUInteger pruneSize = 5 - 20;
if(pruneSize >= 0) {
// Do zero/positive Stuff ...
}
我最初認爲下面的代碼會返回0,我的問題是否有一個函數可以用來在這裏只接收零/積極的結果?返回零或正數?
NSUInteger pruneSize = 5 - 20; // Returns: -15
目前我只是自己檢查結果,但想知道我是否錯過了一些簡單的東西。
NSUInteger pruneSize = 5 - 20;
if(pruneSize >= 0) {
// Do zero/positive Stuff ...
}
pruneSize >= 0
總是如下所示,因爲pruneSize
未簽名。你應該在這裏得到警告。您需要將類型更改爲NSInteger
,即有符號整數。如果你想將一個有符號整數的下限值設爲零,那麼你可以這樣做:
NSInteger pruneSize = 5 - 20; // signed int
pruneSize = pruneSize < 0 ? 0 : pruneSize;
如果你希望你的函數總是返回零,如果你的結果是負的(小於0),則返回零,否則返回結果
int n=0;
if(result > 0){ //positive
n = result
else
n = 0
return n
,或者使用ABS方法
是的,它確實給出了一個警告,我沒有輸入到Xcode只輸入它在這裏。我會將該類型更改爲NSInteger並進行比較。非常感激。 – fuzzygoat