objective c - string of the @exp@ in breakpoint Log Message has only one first symbol -


i need trace program. made symbolic breakpoint:

enter image description here

full string is:

"class name @*(char*)object_getclassname(*(long*)($esp+4))@" 

but instead full class name have first 1 symbol on console i.e:

"class name 'u'"

why? have idea?

ide : xcode 4.6.2. lldb.

from screenshot seems have * before (char *). dereferences string first character.

update: log message

class name @(char*)object_getclassname(*(long*)($esp+4))@ 

does not work intended because lldb prints pointer value instead of c string. workaround, can use method https://stackoverflow.com/a/12695845/1187415:

  • set action "debugger command" instead of "log message",
  • set debugger command to

    expr -- (void)printf("class name %s\n",(char *) object_getclassname(*(long*)($esp+4))) 

Comments

Popular posts from this blog

python - How to create a legend for 3D bar in matplotlib? -

java - Multi-Label Document Classification -

php - Dynamic url re-writing using htaccess -