4
A
回答
17
中去的字符串被表示by this structure用C
struct String
{
byte* str;
intgo len;
};
的str
指針指向實際字符串數據,但這不是NULL終止 - 該長度在len
構件保持。
所以用C語言來說,去字符串離原始類型很遠,它是一個指針,一個長度和一個內存區域。
但是Go不是C,所有這些實現細節對Go程序都是不可見的。在一個字符串是一個原始不可變類型。
6
The documentation for the type string
說:
串是一組8位字節的所有字符串的,通常但不一定代表UTF-8編碼的文本。一個字符串可能是空的,但不是零。字符串類型的值是不可變的。
他們是不可改變的,這似乎讓他們不像你比較到C的概念,而更像也許const char []
其中const
真正含義const
。
任何東西都可以是編程語言中的原始類型,它取決於設計者。 「作爲一個原始人」並不一定意味着你實際上是原始人。 :)
+0
與此類似,Go的頻道是用小數據結構實現的。您不需要/不知道這些結構中的內容,纔能有效地使用渠道。 Go的地圖也是如此,即使這些地圖是不同的,因爲它們是可變的。 –
相關問題
- 1. 什麼是空字符串?
- 2. 什麼是unicode字符串?
- 3. 什麼是Uri字符串?
- 4. 什麼是C#字符串
- 5. CSS中的`〜`代字符串是什麼?
- 6. {}中的字符串是什麼意思?
- 7. 什麼是.NET中的字符串?
- 8. 什麼是Perl中的「字符串化」?
- 9. 什麼是Java中的字符串池?
- 10. C#中字符串前的@是什麼?
- 11. 在C#中的區別是什麼:字符串VS字符串
- 12. Go中的解釋字符串文字
- 13. Go中的字符串中的位置
- 14. 在Go中,reflect.SliceOf()是什麼?
- 15. 在Go中的字符串列表中拆分字符串
- 16. 在Go中引用字符串文字
- 17. 字符串... <varname>什麼是字符串...意思是
- 18. Go模板中的切片字符串
- 19. go readline - >字符串
- 20. 反字符串程序中的空字符是什麼?
- 21. 這個字符串中的隱藏字符是什麼?
- 22. 什麼是字符串在WPF中的字符格式?
- 23. 字符串定義中的「字符」是什麼?
- 24. Python中的字符串模板:什麼是合法字符?
- 25. 字符串前的$是什麼意思?
- 26. 什麼是#define字符串的類型?
- 27. 字符串的值是什麼?
- 28. 此字符串的格式是什麼?
- 29. 字符串的零是什麼?
- 30. 爲什麼字符串總是空的?
快速谷歌搜索給了這個:http://golang.org/pkg/strings/ – Leri
是的,但它沒有回答我的問題 – ghigt
要回答你的問題,它將是有趣的,你看到一個字符串作爲原語類型。 – Mue