0
我在一个IOS项目上,我们使用objective-c。如何在LLDB中设置一个const char *变量
我的函数传递一些类型为const char *的数据。我可以查看调试器中的数据:
expr -- (void)printf("[%s]\n",(const char *)xml)
但我想通过调试器更改xml变量的值。怎么做?
我在一个IOS项目上,我们使用objective-c。如何在LLDB中设置一个const char *变量
我的函数传递一些类型为const char *的数据。我可以查看调试器中的数据:
expr -- (void)printf("[%s]\n",(const char *)xml)
但我想通过调试器更改xml变量的值。怎么做?
用同样的方法,你会为char*
做:
对于const char *xml = "<xml></xml>";
可以分配给XML与
expr -- xml = "<foo></foo>"
当然xml
中(指针到您的字符串)是在职能范围内,所以你只改变功能指向的xml
,而不是xml
最初指向的字符串(你不能,因为你有一个指向const
的指针)
如果xml
被声明为char xml[] = "<xml></xml>";
,这不起作用,因为数组是不可分配在C
注意'p'是一个别名'EXPR --'所以你也可以使用'p XML =“ “'并且获得期望的效果。 (这与你在gdb中使用的命令相同) –
2013-02-15 06:23:23