在每种情况下指针地址或字符串(hello)地址打印的内存地址。帮帮我
案例:1-
NSString *myMessage=@"hello";
NSLog(@"my message:%p",myMessage);
案例:2-
NSString *myMessage=@"hello";
NSLog(@"my message:%p",&myMessage);
答案 0 :(得分:2)
案例1 -
NSString是一个类......
NSString * myMessage = @“hello”; ... myMessage是一个指向包含“hello”
的NSString对象的指针您的具体地址会有所不同,但基本上就是这样(在调试控制台中使用p myMessage
:
(__NSCFConstantString *) $2 = 0x0000000103e9f150
案例2 -
&安培;为您提供对象的地址
& myMessage ...表示指向“hello”的地址
您的具体地址会有所不同,但基本上就是这样(在调试控制台中使用p &myMessage
:
(NSString **) $3 = 0x00007fff5bd62a98
答案 1 :(得分:0)
每个变量都是一个内存位置,每个内存位置都定义了其地址,可以使用&符号(&)运算符进行访问,该运算符表示内存中的地址。
案例:1-它将打印“我的消息:0x6011d0”
NSString *myMessage=@"hello";
NSLog(@"my message:%p",myMessage);
输出:我的留言: 0x6011d0
case:2-它将返回变量myMessage的地址位置。
NSString *myMessage=@"hello";
NSLog(@"my message:%p",&myMessage);
输出:我的消息:0x7ffe5a42e558