lldb를 사용하여 Mountain Lion 10.8.2에서 Xcode 4.5.1로 iOS 응용 프로그램을 디버깅합니다. 때로는때로는 lldb po 명령이 객체 주소 만 반환합니다.
나는 경우 브레이크 포인트에서 사용하는 디버거 창에 바르를 조사하려고합니다 :
포 _currentSale
을하고 응답받을 것이다 : 자기의
인쇄 설명 -> _ currentSale : (판매 *) _currentSale = 0x081cd7e0
과 다른 시간을 나는 (내가 원하는이다)이 응답을 받게됩니다 :
자기 소개 -> _ currentSale : '<'세일 : 0x81cd7e0 '>'(엔티티 : 세일; id : 0x81dd670; 데이터 : { cardNumber = "\ U2022 \ U2022 \ U2022 \ U2022 \ U2022 \ U2022 \ U2022 \ U2022 \ U2022 \ U2022 \ U2022 \ U20220001"; cvv = 222; emailAddress = "[email protected]"; expirationDate = 0413; lastStatus = 승인 됨; purchaseNumber = 00000008; saleAmount = 230; saleDate = "2012-10-20 08:06:45 +0000"; sectionIdentifier = 20121020; tipPercentage = 15; 거래 = ( "0x75df620 '<'x-coredata : // 4A0DEB78-C770-4CE2-8A5D-878F51294D6D/거래/p11 '>" " ); zipCode = 33333; }
가끔씩 나에게 개체 주소와 전체 설명을 제공하는 사이에 회신 내용이 다른 이유는 무엇입니까? 내 판매 오브젝트는 핵심 데이터 오브젝트입니다 (차이가 나는 경우).
감사를 쉽게 충분히 어디에서 오는
char *_NSPrintForDebugger(id)
에 대한 호출을 통해 얇은 베니어, 당신은 테스트 할 수 있습니다. 나는 여전히 "인쇄 설명"이 때때로 객체 주소 만 인쇄하고 다른 시간은 완전한 객체 정보를 인쇄하는 이유를 알지 못했습니다 (각 경우에 모든 정보가 NSLog 문에 의해 결정됨). Randy – codiac다음번에 _NSPrintForDebugger()를 호출 해보십시오. _NSPrintForDebugger()가 적절한 설명을 인쇄 할 수 있지만 lldb의 po가 아닌 경우 lldb 문제 일 가능성이 높습니다. –