小编iWe*_*Pro的帖子

NSString 文字放在内存中的什么位置?

我为 NSString 做了一个测试。

int a = 10;
NSString *str1 = @"str";
NSString *str2 = [NSString stringWithFormat:@"str"];
NSString *str3 = @"str";
NSString *str4 = @"str2";
NSLog(@"%p %p | 3 %p | 4 %p | a %p", str1,str2,str3,str4,&a);
Run Code Online (Sandbox Code Playgroud)

结果是

0x1286287c8 0xa000000007274733 | 3 0x1286287c8 | 4 0x1286287e8 | a 0x7ffeeb215b14
Run Code Online (Sandbox Code Playgroud)

此测试放置在 iPhone 6s(11.1) 模拟器中。那么str1内存中的位置是什么?它是堆栈还是堆?

memory objective-c string-literals nsstring ios

1
推荐指数
1
解决办法
373
查看次数

标签 统计

ios ×1

memory ×1

nsstring ×1

objective-c ×1

string-literals ×1