Objective c 目标C输入是一个数字

Objective c 目标C输入是一个数字,objective-c,xcode,Objective C,Xcode,嘿,我正在学习目标C,我有一个问题。我有一个文本字段,输入应该是一个数字,这个数字我想计算一些东西,但我怎么做 NSNumber *test; if ([prospekt_1 intValue] == 0) { test = [prospekt_1 intValue] * 2.50; [ergebnis_prospekt_1 setIntValue:test]; } 谢谢你的帮助。:) NSNumbertest是一个对象指针。您将int赋值给对象,实质上使其成为指向无效内存地

嘿,我正在学习目标C,我有一个问题。我有一个文本字段,输入应该是一个数字,这个数字我想计算一些东西,但我怎么做

NSNumber *test;

if ([prospekt_1 intValue] == 0) {
    test = [prospekt_1 intValue] * 2.50;
    [ergebnis_prospekt_1 setIntValue:test];
}

谢谢你的帮助。:)

NSNumber
test
是一个对象指针。您将int赋值给对象,实质上使其成为指向无效内存地址的指针

您需要
test=[NSNumber numberwhithint:[prospekt_1 intValue]*2.50]

这将创建一个新对象(NSNumber)并将其分配给指针
test

或 您可以完全跳过NSNumber对象,直接分配int值。为什么要在对象上浪费内存?int是更小的内存占用


int
替换
NSNumber*
,它也会工作,并且内存效率更高。

NSNumber
test
是一个对象指针。您将int赋值给对象,实质上使其成为指向无效内存地址的指针

您需要
test=[NSNumber numberwhithint:[prospekt_1 intValue]*2.50]

这将创建一个新对象(NSNumber)并将其分配给指针
test

或 您可以完全跳过NSNumber对象,直接分配int值。为什么要在对象上浪费内存?int是更小的内存占用


NSNumber*
替换为
int
,它也会工作,并且内存效率更高。

什么是prospekt_1?,请发布更多代码。什么是prospekt_1?,请发布更多代码。是的,这很有效,谢谢:)但结果应该发送到
ergebnis_prospekt_1
我该怎么做?ergebnis_prospekt_1是什么?它是另一个文本字段吗?如果是,请使用
setValue:
(在这种情况下,您将需要对象版本,而不仅仅是一个直接的
int
。此外,请确保它通过IB的插座正确连接。
ergebnis_prospekt_1
是它们在IB中连接的另一个文本字段,我使用了
setValue:test
,但它不起作用。请登录ergebnis_prospekt_1并确保它不是零。)这意味着它在IB中没有正确连接。是的,这工作正常,谢谢:)但结果应该发送到
ergebnis\u prospekt\u 1
我该怎么做?ergebnis\u prospekt\u 1是什么?它是另一个文本字段吗?如果是,请使用
setValue:
(在这种情况下,您将需要对象版本,而不仅仅是一个直接的
int
。此外,请确保它通过IB的插座正确连接。
ergebnis_prospekt_1
是它们在IB中连接的另一个文本字段,我使用了
setValue:test
,但它不起作用。请登录ergebnis_prospekt_1并确保它不是零。)这意味着它在IB中没有正确连接。