0
A
回答
4
這意味着取一個數字值,將其轉換爲一個指針,並將該值指向該地址,然後使用該值初始化變量sptemp
。
如果該地址的內存包含有效的string
對象,則可以使用指針訪問它。否則,試圖這樣做會導致未定義的行爲。
4
string * sptemp = (string *) 0x000353E0;
是什麼代碼究竟想說什麼?
它說,把位於地址0x000353E0
數據,就好像它擁有string
和地址賦給變量sptemp
。之後可以通過指針變量sptemp
訪問數據。
+2
它實際上並沒有說訪問,是嗎?它只是說把它當作。 –
+0
@EvdzhanMustafa,通過賦值給變量'sptemp',你可以通過它訪問該地址的值。 –
0
這些評論大多是正確的,但不完全。我們實際上並不知道這個字符串是std :: string。這可能是該字符串是一些內存映射硬件,其OP嵌入式SBC上的地址由硬件0x000353E0定義。在這種情況下,這是完全明智的,人們總是在做什麼。指針「string * sptemp」被設置爲指向硬件接口。
但這可能是無稽之談。
相關問題
- 1. 指針混淆C++
- 2. 指針混淆 - C++
- 3. 指針與C++混淆
- 4. C++指針參考混淆
- 5. C++中的指針混淆
- 6. C++中的指針混淆
- 7. C字符串混淆
- 8. 混淆指針
- 9. 指針混淆
- 10. 指針混淆
- 11. 指針混淆
- 12. 指針混淆
- 13. 混淆:指針和字符數組在C
- 14. 指針混淆指針
- 15. C++,向量,指針和對象混淆
- 16. C++向量,列表,指針和混淆
- 17. C指針和malloc混淆EXC_BAD_ACCESS
- 18. C指針和陣列混淆
- 19. 混淆的typedef和指針用C
- 20. C結構和指針混淆
- 21. 指針和對象混淆(Objective-C)
- 22. 混淆引用和指針
- 23. 混淆Qsort和指針
- 24. 指針和數組混淆
- 25. C字符串和指針
- 26. C字符串和指針
- 27. c#字符串文字混淆
- 28. 字符指針在C++中與cout混淆
- 29. C指針,指向和字符串
- 30. 簡單的C指針混淆
它非常尖叫未定義的行爲。 –
右側是給定在左側的對象的*值*。就像'int n = 10;'一樣。 –
與它相同:string * sptemp; sptemp = 0X000353E0 –