如何在LLDB中设置const char*变量
我参与了一个IOS项目,我们使用objective-c 函数传递一些类型为const char*的数据。我可以在调试器中查看数据:如何在LLDB中设置const char*变量,c,lldb,C,Lldb,我参与了一个IOS项目,我们使用objective-c 函数传递一些类型为const char*的数据。我可以在调试器中查看数据: expr -- (void)printf("[%s]\n",(const char *)xml) 但是我想通过调试器动态地更改xml变量的值。如何操作?与处理char*的方法相同: 对于const char*xml=“”您可以使用 expr--xml=”“ 当然,xml(指向字符串的指针)在函数范围内,因此您只更改函数中xml指向的位置,而不是xml最初指向的字符
expr -- (void)printf("[%s]\n",(const char *)xml)
但是我想通过调试器动态地更改xml变量的值。如何操作?与处理
char*
的方法相同:
对于const char*xml=“”代码>您可以使用
expr--xml=”“
当然,xml
(指向字符串的指针)在函数范围内,因此您只更改函数中xml
指向的位置,而不是xml
最初指向的字符串(您不能更改,因为您有指向const
的指针)
如果将xml
声明为char-xml[]=”,则此操作无效
,因为数组在C中是不可赋值的。请注意,p
是expr--
的别名,因此您也可以使用p xml=“”
,并获得所需的效果。(这与您在gdb中使用的命令相同)