Я столкнулся с странным явлением, когда передаю длинное длинное значение из вызова метода. В моем приложении я уже работал над этим, но мне любопытно узнать, почему это так.Неожиданные результаты при долговременном возврате вызова метода
Может кто-нибудь объяснить мне, когда у меня есть метод, как определено:
- (long long)testLong {
NSString* longString = @"100000133597162";
long long retval = [longString longLongValue];
NSLog(@"retval:%lld",retval);
return retval;
}
и я называю метод следующим образом:
long long test = [self testLong];
NSLog(@"test:%lld",test);
Результаты:
retval:100000133597162
test:410044394
Мне кажется таким странным. Правильное значение распечатывается внутри метода. Но один раз за пределами метода он кажется совершенно другим значением. Я перешел через отладчик, и он показывает одно и то же - два разных значения. Я просто не могу объяснить это. Кто угодно?
указатель на стек –
Странно, ваш код работает нормально для меня. – Vladimir
У вас есть одна и та же подпись в файле заголовка? –