0
A
回答
3
name
不是指針,名稱是std::string
對象。 &name
,其中是的指針,是該對象的地址。
7
name
不是指針,它是std::string
本身。所以&name
是該字符串的地址,這意味着該代碼將打印出一個數字。
即使它是一個指針,在其上使用operator &
也是合法的:它會返回指針變量在內存中的地址(另一個不同的數字)。
如果你想有一個指針內name
的第一個字符,然後用name.c_str()
獲得C風格空結尾的字符串(實際上是一個指向字符串的第一個字符),或name.data()
它返回一個指針到字符串,但不能保證它將以null結尾。
0
嗨string類有c_str()方法。 使用const char* ptr = name.c_str();
2
name
不是指針,它是std::string
類型的對象。&name
爲您提供該對象的地址。- 要獲取指向字符串第一個字符的(const-)指針,請使用
name.c_str()
。 指針也有地址!
void allocate_string(std::string **foo) { *foo = new std::string(); }
相關問題
- 1. 指針的第一個字符
- 2. 字符串值是一個int指針的名稱
- 3. C函數大寫指針字符串的第一個字符
- 4. 獲取* uint8指針指向字符串中的第一個字符
- 5. 是一個常量字符指針,指向一個常量字符或指向字符的常量指針嗎?
- 6. 如何使用第一個字符作爲部分名稱
- 7. 指定一個字符串值指針
- 8. 一個字符串指針的副本
- 9. Reverse在cstring中查找指向第n個字符的指針
- 10. 獲取指針字符指針的地址字符指針
- 11. c中的指針(如何指向字符串中的第一個字符,指針指向同一字符串中的其他位置)
- 12. PHP字符串替換第一個字母名字的第一個名字
- 13. 將一個字符串從一個指針複製到另一個指針
- 14. 用較低的第一個字符替換方法名稱
- 15. C++指向類名稱的指針
- 16. 初始化一個字符指針C++
- 17. 創建一個全局字符指針
- 18. 創建一個函數指針,它將一個函數指針作爲參數
- 19. C++保留字作爲C中的函數指針名稱struct
- 20. C指針鑄造:單個int指針雙字符指針
- 21. 是否有可能有一個指針指向第一個指針所指向的變量的指針?
- 22. 字符指針
- 23. 字符指針
- 24. 指向字符的指針
- 25. 如何列出有一個元音作爲第二個字符在其名稱
- 26. 是否可以找出變量名稱,指向的指針?
- 27. 爲什麼PropertyDescriptor以大寫字母返回屬性名稱作爲第一個字符?
- 28. 爲內存中的字符指針分配一個結構
- 29. Oracle SQL - 解析一個名稱字符串並將其轉換爲第一個姓氏和名字
- 30. 一個字符串以%fusionning的第一個字符
另外:
,如果你想一個指針傳遞到具有(通過分配內存的實例)以操縱指針的函數,這是有用試圖改變Ç風格的字符串將導致未定義的行爲(C++ 03 21.3.6/2&17.4.3.8) – 2011-04-06 11:59:05