use*_*878 5 iphone objective-c ios
当我构建并安装我的应用程序时,我会收到以下内存警告
"'>'的左操作数是一个垃圾值"在这一行isTrue =(newLength> 20)?否:是;
这里有什么问题.谢谢你的帮助
(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
NSUInteger newLength;
BOOL isTrue;
if(textField == txtFirstName){
newLength = [textField.text length] + [string length] - range.length;
//isTrue = (newLength > 20) ? NO : YES;
}
if(textField == txtLastName){
newLength = [textField.text length] + [string length] - range.length;
//isTrue = (newLength > 20) ? NO : YES;
}
if(textField == txtEmail){
newLength = [textField.text length] + [string length] - range.length;
//isTrue = (newLength > 100) ? NO : YES;
}
if(textField == txtCompanyName){
newLength = [textField.text length] + [string length] - range.length;
//isTrue = (newLength > 30) ? NO : YES;
}
if(textField == txtPassword){
newLength = [textField.text length] + [string length] - range.length;
//isTrue = (newLength > 30) ? NO : YES;
}
if(textField == txtRe_EnterPassword){
newLength = [textField.text length] + [string length] - range.length;
//isTrue = (newLength > 30) ? NO : YES;
}
if(textField == txtZipCode){
newLength = [textField.text length] + [string length] - range.length;
//isTrue = (newLength > 20) ? NO : YES;
}
if(textField == txtCountry){
newLength = [textField.text length] + [string length] - range.length;
//isTrue = (newLength > 30) ? NO : YES;
}
isTrue = (newLength > 20) ? NO : YES;
return isTrue;
}
Run Code Online (Sandbox Code Playgroud)
Ale*_*eem 16
当所有if条件都失败时,即出现问题.如果textField不是您期望的那一组.
在这种情况下,newLength永远不会分配,并且将是随机垃圾值.虽然这可能"永远不会发生",但静态分析仪并未意识到这一点.
您应该初始化newLength为具有默认值,可能为零.
| 归档时间: |
|
| 查看次数: |
3799 次 |
| 最近记录: |