Возврат строки - PullRequest
       22

Возврат строки

0 голосов
/ 12 марта 2011

Я только начал с Objective-C и у меня (возможно) очень, очень простой вопрос / проблема.

int testf(int x){
    NSDateFormatter *dateformatter=[[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"dd.MM.yyyy"];
    NSString *infstr=[dateFormatter stringFromDate:[[NSDate] dateByAddingTimeInterval:(60*x)];
    return infstr;
}
NSString *testString=testf(1);

В настоящее время у меня есть следующая проблема: я не знаю, как вернуть строку из функции. Я даже не мог понять это через Google.

Вышеупомянутый код приводит к предупреждению «Указатель из целого числа без приведения». Я надеюсь, что кто-нибудь знает решение этой «проблемы» и готов поделиться им со мной.

Заранее спасибо.

Ответы [ 2 ]

5 голосов
/ 12 марта 2011

Вам необходимо создать объект NSString, используя int.

NSString *testf(int x) {
    return [NSString stringWithFormat:@"%i",x];
}

NSString *testString = testf(1);
3 голосов
/ 12 марта 2011

Просто измените ваш тип возвращаемого значения с int на указатель NSString следующим образом:

NSString* testf(int x){
    NSDateFormatter *dateformatter=[[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"dd.MM.yyyy"];
    NSString *infstr=[dateFormatter stringFromDate:[NSDate dateByAddingTimeInterval:(60*x)]];
    [dateFormatter release];
    return infstr;
}
NSString *testString=testf(1);

Также ваш dateFormatter протекает, поэтому добавьте оператор release, как показано выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...