字符串基本内存结构

字符串是占16个字节的,一个字符是占一个字节的,所以问题就是超过16个字节的字符怎么存储

字符串内容小于16个字节,拿字符说,小于等于16个字符,就放变量内存

大于16个字节放Text段的cString(常量区),字符串的内存布局为字符串长度+字符串地址指针(并不是实际指针,需要进行运算)

如果是用append等方式拼接的字符串超过16个字节,就会开启堆空间,本地为字符串长度+堆空间地址指针,堆空间是类型信息(元类信息)+引用计数+实际内容,所以指针指向的内容也不是字符串,还要偏移

    原文作者:yokan_de_s
    原文地址: https://blog.csdn.net/yokan_de_s/article/details/116307432
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞