Сегодня я просматривал журналы сбоев, генерируемые приложением для iphone:
Thread 0 Crashed:
0 libobjc.A.dylib 0x3002d7da 0x3002b000 + 10202
1 UIKit 0x31ec4abc 0x31e4d000 + 490172
2 UIKit 0x31ebd214 0x31e4d000 + 459284
3 UIKit 0x31ebcfac 0x31e4d000 + 458668
Может кто-нибудь сказать мне, что означают шестнадцатеричные адреса? (адреса памяти, конечно ..)
Я знаю, как символизировать, чтобы произвести:
0 libobjc.A.dylib 0x000027da objc_msgSend + 18
1 UIKit 0x00077abc -[UINavigationController _startDeferredTransitionIfNeeded] + 176
2 UIKit 0x00070214 -[UINavigationController pushViewController:transition:forceImmediate:] + 600
3 UIKit 0x0006ffac -[UINavigationController pushViewController:animated:] + 28
и отладить аварию оттуда, но мне любопытно; если вы берете
0x3002d7da 0x3002b000 + 10202
затем: 0x3002d7da = 0x3002b000 + (десятичное число) 10202
Что это означает в точности?
Я должен добавить, что я не ищу информацию о том, как символизировать, спасибо!
РЕДАКТИРОВАТЬ: что также странно для меня, что если вы сравниваете до и после символических версий, то для кода, который я написал:
9 memleaktest 0x00002ffe 0x1000 + 8190
becomes
9 memleaktest 0x00002ffe -[memleaktestViewController buttonOne] (memleaktestViewController.m:24)
имеет смысл, но для фреймворка:
8 CoreFoundation 0x307fe52c 0x307f8000 + 25900
becomes
8 CoreFoundation 0x0000652c -[NSObject(NSObject) release] + 24
адрес и смещение изменились? С чего бы это?