精通Swift(18)- String&Array

關于String的思考

????1個String變量占用多少內存?

????下面2個String變量,底層存儲有什么不同?

????var str1 = "0123456789"

????var str2 = "0123456789ABCDEF"

????如果對String進行拼接操作, String變量的存儲會發(fā)生什么變化?

? ??str1.append("ABCDE")

????str1.append("F")

????str2.append("G")

內 存 地 址 從?低?到?高

代碼區(qū)

常量區(qū)

全局區(qū)(數(shù)據(jù)段) ??0x4bdc(%rip)

堆空間?0x10(%rax)

棧空間 ?-0x78(%rbp)

動態(tài)庫

ASCII碼表:https://www.ascii-code.com/

dyld_stub_binder

????符號的延遲綁定通過dyld_stub_binder完成

????jmpq *0xb31(%rip)格式的匯編指令 占用6個字節(jié)


關于Array的思考

public struct Array<Element>

var arr = [1, 2, 3, 4]

1個Array變量占用多少內存??

數(shù)組中的數(shù)據(jù)存放在哪里?

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容