當我爲我的iOS Xcode項目使用靜態C++庫時,我遇到了printf和Xcode LLDB調試器的奇怪行爲,有時我的打印結果printf("%s", char*)
是char與數字級聯或垃圾字符。附加的圖像本身就說明了一切。任何想法?printf在打印字符時出現奇怪的行爲--LLDB調試器
0
A
回答
2
似乎按預期方式工作。 %s
需要以NUL結尾的字符串,即給定char*
,打印任何內容,直到第一個'\0'
。如果您希望陣列適用於%s
,則必須分配5個字節並指定a[4]=0;
。
+0
*任何*行爲將「如預期」。如果給'printf(「%s」,blah)「一個指向非NUL終止的數組的指針,行爲是不確定的。 –
+0
明白了,謝謝! –
0
的字符數組a
需要用'\0'
被終止,如果你與一個%s
格式說明打印出來:
char * a = new char[5];
a[0] = 'i';
a[1] = 'p';
a[2] = 'o';
a[3] = 'd';
a[4] = '\0';
printf("word: %s\n", a);
相關問題
- 1. 調試時GDB printf奇怪的輸出
- 2. 的char *打印出奇怪的字符
- 3. 打印/讀取時出現奇怪的行爲
- 4. 行打印之前的奇怪字符
- 5. 打印數組時出現SimpleXMLElement對象時出現奇怪的行爲
- 6. 爲UDP打印的奇怪字符
- 7. C++和printf - 奇怪的字符輸出
- 8. Printf奇怪的字符
- 9. 奇怪的printf()行爲
- 10. 奇怪的printf行爲?
- 11. 在C中打印時出現奇怪的輸出
- 12. LLDB的奇怪輸出
- 13. 在PHP中奇怪的打印行爲?
- 14. 當在Matlab中調用庫函數時出現奇怪/奇怪的字符
- 15. VS 2013在調試過程中出現的奇怪行爲
- 16. 爲什麼我的字符串輸出打印出奇怪的字符?
- 17. 嘗試返回字符指針時出現奇怪的輸出
- 18. 奇怪的XCode調試器行爲
- 19. 奇怪的調試器行爲
- 20. 奇怪的調試器行爲
- 21. 奇怪的Chrome調試器行爲
- 22. 打印樹顯示奇怪的字符
- 23. MSYS打印奇怪的字符串
- 24. python 3 struct.pack()打印奇怪的字符
- 25. .encode(「UTF-8」)打印奇怪的字符
- 26. 打印奇怪字符的C程序
- 27. C程序打印奇怪的字符
- 28. 功能打印奇怪的字符:v
- 29. 命令printf出現奇怪的問題
- 30. 移動時出現奇怪的行爲
您的代碼的文本複製和粘貼將更容易閱讀和使用。 –