我正在从文件中加载一些xml ...这是文件的片段:
<root>
<person>
<age>99</age>
<name>bob</name>
</person>
<person>
<age>199</age>
<name>bill</name>
</person>
...
</root>
我在iOS应用中使用libxml。这行代码:
if([[NSString stringWithUTF8String:cur_node->name] isEqualToString:@"name"]){
正在给我这个编译器警告:
Pointer targets in passing argument 1 of 'stringWithUTF8String:' differ in signedness
这个警告意味着什么,我该如何摆脱它?
干杯!
编辑:将cur_node-&gt;名称转换为(const char *)删除了警告
答案 0 :(得分:2)
根据this forum post,有3种C字符类型:
char
unsigned char
signed char
基本上,您正在访问的libxml属性(cur_node-&gt; name)可能是unsigned char *
或signed char *
,而stringWithUTF8String:
期望的是不同的类型(const char *
)
类似的问题是here on iPhoneDevSDK Forums。
如果你的代码有效,那么施放可能是摆脱警告的简单方法。