我有點困惑,所以我會先解釋我的理解,希望有人能糾正我,並解釋我出錯的地方。在C中,參數是通過值傳遞的,所以如果我們想要從傳入的函數內改變指針,我們必須將參數定義爲指針指針,以便我們可以修改實際的指針比價值。如果這是正確的,是否有人可以解釋sprintf()函數如何設法更改* str指針?指針vs指針指針C
0
A
回答
4
sprintf
函數不改變*str
指針,它改變指針*str
指向的數據。
實施例:
char *str = malloc(20);
sprintf(str, "hello %s", "world");
// str has not changed, only the data it points to has
+0
請您詳細說明一下嗎?謝謝:) – CaseyJones 2015-04-04 02:05:10
+0
如果* str指針改變了,那麼* str指針會指向不同的地方。它仍然指向相同的位置,只是該位置的數據發生了變化。例如,指針就像一個房子的地址,數據就像房子裏的人。 sprintf就像是替換房子裏的人。 – 2015-04-04 02:06:42
相關問題
- 1. C/C++指針數組VS指針的指針
- 2. 指針指針(C++)
- 3. 使用指針:指針指針指針
- 4. C - 釋放指針指針
- 5. 指針在C指針
- 6. C++約指針+非指針
- 7. **指針和*指針C
- 8. JNI&C - 指針指針
- 9. C指針雙指針
- 10. C++矢量指針指針
- 11. C指針指針問題
- 12. C指針,指針,字符
- 13. 指針值C空指針
- 14. C指針指針數組
- 15. Memoryleak指針指針,C++
- 16. 指針指針
- 17. 指針指針?
- 18. 指針指針
- 19. 指針指針
- 20. 字符指針vs數組指針
- 21. 基類指針vs繼承類指針?
- 22. 字符指針VS INT指針
- 23. 常量指針vs常量值指針
- 24. 指針vs零初始化指針
- 25. C++ - 指向數組的指針 - 指針
- 26. 在C++中爲指針指定指針
- 27. 指向C中的指針的指針
- 28. C++指向指針的指針
- 29. 指向C++指針的指針
- 30. 指針的大小,指向C中指針的指針
A 「雙指針」 包含雙的地址。指向指針的指針包含指針的地址。 – 2015-04-04 02:59:24
謝謝,糾正:-) – CaseyJones 2015-04-04 03:34:48