Xcode

2013-11-01 35 views
6

'daki belirli bir satırdaki çalışma zamanı hata mesajını gösterme C/C++ kodunda Xcode'da çalışma zamanı sırasında özel hata mesajı görüntülemek istiyorum. Bu, örneğin özel assert() işlevi için kullanılabilir.Xcode

Ben SenTestingKit yaptığı gibi, mesaj inline görüntülemek istiyorum:

SenTestingKit

Şu anda yapabileceğimiz tek şey doğru çizgisinde durdurmak için __builtin_trap kullanmaktır. Ancak özel bir hata mesajı görüntülenmiyor.

__builtin_trap

+0

Sorunuz açık değil. Daha fazla bilgi veya örnek sunmayı deneyin. –

+0

@AdamBurry Sorumu güncelledim. – Wojtek

+0

Kalıcı mesajlar iyi olur mu? Eğer öyleyse, #pragma mesajını kullanın (mesajınızı ispatlayın) ve SIGTRAP'ı yükseltin ya da o satırda __builtin_trap kullanın. – xryl669

cevap

0

ben xcode aşina değilim ama burada neredeyse her yerinde işler böyle yürüyor. Size özel assert aşağıdaki gibi görünecektir: pencerelerinde

#define MY_ASSERT(a1, a2, desc, ...) {\ 
    PrintAssertMessage(...);   \ 
    DebugBreak();     \ 
} 

zaten win32 API bir DebugBreak işlevi var. Linux'ta ve IA32/X64'ü çalıştıran diğer birçok sistemde, kesme noktası kapanı olan int 3'ü aramanız yeterlidir.

__asm {int 3} 

veya

__asm__("int $3") 

veya herhangi bir durumda

__asm__("trap") 

bu devre dışı bırakan bir makro çevrili edilmelidir:

asm ("int 3"); 

ben xcode bu kadar okumak hata ayıklama iddialı da makro th oluşturur bir kırılma noktasına nasıl yol açacağını tanımlar.

+0

Çapraz platform tuzağı gibi çalışan kullanıma hazır işlev ('__builtin_trap') bile vardır. Ve emin, mesaj kutusu veya konsol çıkışı ekleyebilirsiniz. Ama bu *, orijinal bir soruyu cevaplamıyor *, bu mesajın Xcode'ta satır içi olarak nasıl görüntüleneceği. –