pointer类型,(objectiveC中的&符号的意义)

pointer类型简单地理解为指针或引用

#import <Foundation/Foundation.h>

int main(int argc, char *argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];

int intVariable = 10; //定义一个整形变量,名为intVariable
int *intPointer = &intVariable; //定义一个整形类型的指针,名为intPointer, 并将intVariable的地址指向

NSLog(@”intVariable: %i”, intVariable);
NSLog(@”intPointer: %i”, *intPointer); //获取指针类型的值,指针名称前面加*号

intVariable += 5; //改变intVariable的值
NSLog(@”intVariable: %i”, intVariable);
NSLog(@”intPointer: %i”, *intPointer); //指针指向,当前intVariable的值是什么,就会获得到是什么值

*intPointer += 5; //改变intPointer的值
NSLog(@”intVariable: %i”, intVariable); //在对应指针类型的操作,即时反应其值
NSLog(@”intPointer: %i”, *intPointer);

//获取指针地址的方法
//方法1
NSLog(@”Address: %i”, intPointer); //指针直接输出地址

//方法2
NSLog(@”Address: %i”, &intVariable); //变量前加&号可以获取指针地址

[pool drain];
return 0;
}

- 定义指针时,需要使用*符号,例如: int *IntPointer; ObjectName *objectPointer;
- 获取类型的指针,需要在变量名前面加&符号,例如:intPointer = &intVariable;
- 获取指针的值时,需要在指针名前面加*符号,例如:int currentVariable = *intPointer;

原文地址:https://www.cnblogs.com/xgbzsc/p/2506724.html