Ari*_*hys 6 c c++ android assert android-ndk
第一个 - 是默认情况下已经定义的NDEBUG,因此断言在#undef之前不起作用.第二个 - 他们工作,但我没有收到DDMS登录.
如果有一些特定于android的assert.h?
或者我只是做错了什么?
Mār*_*iko 13
如果要使用断言编译代码,则可以通过三种方式完成:
小智 6
通常程序会因为调用SIGSEGV后的信号而崩溃assert(),默认情况下NDEBUG是定义的,你可以通过LOCAL_CFLAGS += -UNDEBUG在编译期间添加flag()来关闭但不适用于我的情况.
我发现另一种解决方案是使用__android_log_assert,只需在下面定义并替换assert()为assert3:
#define assert3(e...) __android_log_assert(e, "TAG", #e)
Run Code Online (Sandbox Code Playgroud)