Я следую этому руководству Я нашел онлайн о том, как сделать калькулятор в xcode. Я использую версию 3.2.6 Xcode и здесь функция, которая дает мне проблемы:initWithFormat не работает в объекте xcode c
-(IBAction) calculate
{
float x= ([textField1.text floatValue]);
float c= x*([textField2.text floatValue]);
label.text = [[NSString alloc] initWithFormat:@"%2.f", c];
}
я получаю эти ошибки компилятора на линии с label.text: Ожидаемые «:» перед «;» токен и путают о более ранних ошибках.
Любые идеи о том, что может быть неправильным? Должен ли я включать специальный файл заголовка для использования initWithFormat? или это синтаксическая ошибка?
В коде, который вы опубликовали, нет синтаксической ошибки. Может ли это быть где-то еще? (Ошибки будут каскадировать код и сделать его похожим на синтаксическую ошибку здесь, когда этого не было.) –
Не вижу в этом ничего плохого. Я предполагаю, что виновник находится в другом месте, и это красная селедка. Чтобы ответить на ваш вопрос напрямую, вам не нужно включать специальный заголовок. – JamesB41
Я бы рекомендовал использовать метод класса: + stringWithFormat: вместо этого: label.text = [NSString stringWithFormat: @ "% 2.f", c]; Используя этот подход, вам не нужно беспокоиться об управлении памятью, так как методы класса автоматически переносят объект на вас. При создании объектов с использованием + alloc и -init вы владеете им и, следовательно, ответственны за его освобождение –