Iphone 目标C字符串混淆
我有密码Iphone 目标C字符串混淆,iphone,objective-c,nsstring,nsarray,Iphone,Objective C,Nsstring,Nsarray,我有密码 NSString *cellValue1 = [products1 objectAtIndex:indexPath.row]; 当我尝试打印NSLog时(@“单元格值为%@”,单元格值1) 在日志中我什么都没有得到, 如果使用%s,则得到的是一些符号,而不是cellValue1中的字符串 请帮帮我 提前感谢。检查以确保实际设置了products1。当您发送-objectAtIndex:消息时,听起来好像是零。这肯定意味着您的字符串是空的。。。 用长度法检查…解决方案: 原因: NSL
NSString *cellValue1 = [products1 objectAtIndex:indexPath.row];
当我尝试打印NSLog时(@“单元格值为%@”,单元格值1)代码>
在日志中我什么都没有得到,
如果使用%s,则得到的是一些符号,而不是cellValue1中的字符串
请帮帮我
提前感谢。检查以确保实际设置了products1
。当您发送-objectAtIndex:
消息时,听起来好像是零。这肯定意味着您的字符串是空的。。。
用长度法检查…解决方案:
原因:
NSLog使用字符串输入进行操作。虽然您的语句应该可以工作,但如果原始cellValue1字符串存在某些/任何问题,则原始语句将无法捕获该问题,并确保NSLog()是一个纯字符串。通过使用stringWithFormat:语法,您可以确保即使您的cellValue1值为null或nil,您也会收到“CellValueIs”注释,并且可能会收到一些关于cellValue1字符串传递到语句中的内容的提示
测试说明:
如果上述方法不适用,只需使用NSLog(cellValue1)测试原始字符串代码>。如果这不起作用,它将告诉您原始NSString没有正确地以indexPath.row值提取产品
希望这有帮助 %@对于打印NSString是正确的;%s代表C字符串(char*)。您能否添加将对象添加到products1的代码?否,当您尝试将nil值记录为对象时,NSLog显示“(null)”。提问者没有指定他们没有看到(null)(他们对看到null的解释可能会让他们说他们什么也得不到,因为null从技术上来说意味着什么。)…只有我的两分钱。感谢jlehr,上面的答案解决了我的问题,问题是products1实际上没有设置。@Nikolai,提供示例代码是为了帮助用户“运行”这个问题的一个可能的解决方案是确保他得到了一个实际的字符串。谢谢你的降级点!
NSString *cellValue1 = [products1 objectAtIndex:indexPath.row];
NSLog([NSString stringWithFormat:@"Cell Value is %@", cellValue1]);