我正在制作一个计算器
我定义了所有函数SUM SUB DIV MUL
然后当我输入这个if语句只传递给第一个时 虽然条件不对
所以我拥有2个文本字段 每个按钮有4个动作 2动作:结果清晰 和操作的标签将采取+或 - 或*或÷任何...... 这个名为Operation
的标签所以我在计算操作中输入了这个if语句 但我不知道什么是错的 当我点击计算操作将是第一个如果操作是+ 当我按1-4时 它显示1 + 4 = 5
//in -(IBAction)calculate :
-(IBAction)Calculate:(id)sender{
if (operation.text=@"+"){
//sum
a =num1.text.integerValue;
b= num2.text.integerValue;
c=num1.text.integerValue+num2.text.integerValue;
printf("%i >> %i",b,num2.text.integerValue);
[num1 resignFirstResponder];
[num2 resignFirstResponder];
result.text =[NSString stringWithFormat:@"%i + %i = %i",a,b,c];}
else if (operation.text=@"-"){
//sub
a =num1.text.integerValue;
b= num2.text.integerValue;
c=num1.text.integerValue-num2.text.integerValue;
printf("%i >> %i",b,num2.text.integerValue);
[num1 resignFirstResponder];
[num2 resignFirstResponder];
result.text =[NSString stringWithFormat:@"%i - %i = %i",a,b,c];}
else if (operation.text=@"*"){
//mul
a =num1.text.integerValue;
b= num2.text.integerValue;
c=num1.text.integerValue*num2.text.integerValue;
printf("%i >> %i",b,num2.text.integerValue);
[num1 resignFirstResponder];
[num2 resignFirstResponder];
result.text =[NSString stringWithFormat:@"%i * %i = %i",a,b,c];
}
//div
else if (operation.text=@"÷"){
a =num1.text.integerValue;
b= num2.text.integerValue;
c=num1.text.integerValue/num2.text.integerValue;
printf("%i >> %i",b,num2.text.integerValue);
[num1 resignFirstResponder];
[num2 resignFirstResponder];
result.text =[NSString stringWithFormat:@"%i ÷ %i = %i",a,b,c];
}
}
HELP
答案 0 :(得分:1)
=
执行分配,因此if (operation.text=@"+")
实际上会将@"+"
分配给operation.text
,但不会比较相等性。然后,if
语句将指定的值视为true。