我有代碼客觀C字符串混亂
NSString *cellValue1 = [products1 objectAtIndex:indexPath.row];
當我嘗試打印NSLog(@"cell value is %@",cellValue1);
在日誌中我沒有得到任何東西, 如果我使用%S,我得到一些符號,不位於cellValue1中的字符串。
請幫幫我。
在此先感謝。
我有代碼客觀C字符串混亂
NSString *cellValue1 = [products1 objectAtIndex:indexPath.row];
當我嘗試打印NSLog(@"cell value is %@",cellValue1);
在日誌中我沒有得到任何東西, 如果我使用%S,我得到一些符號,不位於cellValue1中的字符串。
請幫幫我。
在此先感謝。
它肯定意味着你的字符串是空的...... ,長度方法檢查它...
解決方案:
NSString *cellValue1 = [products1 objectAtIndex:indexPath.row];
NSLog([NSString stringWithFormat:@"Cell Value is %@", cellValue1]);
原因: 的NSLog工作帶有字符串輸入。雖然你的陳述應該能夠工作,但如果你的原始cellValue1字符串存在一些/任何問題,你的原始語句將不會處理這個問題並確保NSLog()被交給一個純字符串。通過使用stringWithFormat:語法,您可以確保即使您的cellValue1值爲null或nil,您將收到您的「單元格值」爲註釋,並且可能會提示您的cellValue1字符串正在傳遞給語句的內容。
測試注: 如果上述方法不爲你工作,只要使用NSLog(cellValue1);
測試你的原始字符串。如果這不起作用,它會告訴你,你的原始NSString沒有正確地將你的產品拉到indexPath.row的值。
希望這會有所幫助!
-1切勿使用非文字作爲格式字符串。 –
@ Nikolai,通過確保他得到一個實際的字符串,提供了示例代碼來幫助用戶「Run-Down」解決問題。感謝降級點! – Newbyman
%@對於打印NSString是正確的; %s用於C字符串(char *)。 –
您可以添加將對象添加到products1的代碼嗎? – mmccomb