-2
A
回答
4
可變msg1
指向由字符串文字佔據的存儲器。字符串文字不可修改。任何修改字符串文字的嘗試都會導致未定義的行爲。
從C標準(6.4.5字符串文本)
- 它是未指定的這些陣列是否是不同的條件是它們的元素>有適當的值。 如果程序試圖修改這樣一個 數組,行爲是未定義的。
要考慮到,如果你想將一個字符串複製到使用標準的C函數strcpy
字符數組則數組必須有足夠的內存來容納包括其終止零的字符串。
通過將指針替換爲字符數組,您可以使代碼有效。例如
char msg1[15] = "Hello World";
//...
strcpy(msg1, "Hello New York");
相關問題
- 1. C++:使用STRCPY與指針字符串
- 2. 字符串指針和strcpy
- 3. 帶指向字符數組的指針的strcpy函數
- 4. 指向字符的指針
- 5. strcpy的字符指針中止
- 6. 使用指向字符串的指針初始化指向字符串中的字符的指針
- 7. C - strcpy指針
- 8. 指向字符串的指針向量
- 9. 複製字符指針進入下再字符指針沒有的strcpy
- 10. 使用指向字符的指針打印字符數組。
- 11. 使用指針指向字符串中的某些字符
- 12. 爲什麼strcpy不使用dest指針的const指針?
- 13. strcpy()複製指針?
- 14. 指向字符串的指針陣列
- 15. 指向字符串的指針
- 16. 指向字符串C的指針
- 17. 傳遞指向字符串的指針
- 18. 指向字符串的指針數組
- 19. 指向字符串指針的數組
- 20. 指向字符串的指針
- 21. 指針,指向函數的字符串
- 22. 指向字符串的指針 - C
- 23. 指向字符串的指針
- 24. C++,SQLite - 指向字符串的指針的指針
- 25. 指向指針與argv的
- 26. 使用<<運算符指向字符的指針
- 27. 指向結構或類的指針與指向第一個字段的指針
- 28. 指針指向在C的字符串指針數組++
- 29. Java JNI UnsatisfiedLinkError指向指針的C字符指針
- 30. 指向字符指針的指針分配問題
[請不要張貼代碼或錯誤消息的圖像。(http://meta.stackoverflow.com/q/303812/1679849) –
的[程序使用的strcpy何時中止可能的複製一個字符指針? (在char數組上工作正常)](http://stackoverflow.com/questions/5645949/program-aborts-when-using-strcpy-on-a-char-pointer-works-fine-on-char-array) –
[在C中char s \ [\]和char \ * s有什麼區別?](http://stackoverflow.com/questions/1704407/what-is-the-difference-between-char-s -and炭-S-在-c)的 –