如何使用赋值运算符* =将值乘以10?

时间:2012-03-19 16:23:14

标签: objective-c

很简单:

current *= 10;

返回“二进制*的无效操作数”构建错误。

int *current = 0;

- (void)bOnePress:(id)sender {
    current *= 10;
    current += 1;
    [resultDisp setText:[NSString stringWithFormat: @"%i", current]];
}
谷歌不会告诉我我做错了什么,所以我在这里问。 :S

编辑:答案:

int current = 0;

删除*。

4 个答案:

答案 0 :(得分:3)

您已将变量声明为指向内存地址0的指针,而不是可以乘以的整数变量。

答案 1 :(得分:2)

您声明了一个指向整数的指针,而不是整数。你可能想要像

这样的东西
int current = 0;

不要与Objective-C方式混淆处理对象。这些始终是指针,但int只是int,它本身就是一种类型。当您想要引用内存中包含int的另一部分时,您将只使用指向int的指针。

答案 2 :(得分:1)

您将指针乘以十,而不是值。

应该是:

*current *=10;

答案 3 :(得分:1)

*current *= 10;