掌握iOS开发要点 指针的具体用法
时间:2014-10-14 15:39:08 | 来源:千锋教育深圳校区 | 作者:千锋iOS越来越风靡的今天,不少程序员都想转型成为iOS开发者。而在深圳这样一个高新科技企业密集的地区,不能说iOS开发人员不足,重要的一点是iOS开发者不精。许多自学成才的iOS开发者,只是把iOS的开发学到了,而没有进行实际的训练,因此在企业中难以把握正确的方向,成不了大气。千锋ios培训作为移动互联教育培训行业中的领军者,在培训中将学员的培训成果放在首位,把基础的Objective-C知识打扎实,注重培养学员的学习技能和实践能力,从整体方向上培养,理论和实践相结合。如此才能在众多iOS开发者中崭露头角。
在iOS开发的学习中,将基础打好是必不可少的,C语言中的指针用法,要透彻的理解,才能做到活学活用。
指针实际上是变量,64位系统中所有指针的大小是8字节,存放的是地址,例如int a = 5;int *p = &a;则*p存放的是a的地址。
变量才可以取地址,常量没法取地址。
指针可以直接指向数组名 即 int a[10]; int *p=a;此时a相当于a个元素的地址,即&a[0]。
指针变量+1,其结果等于加1个其指向的字节数,即int a=4;int *P=&a; 此时p+1 为4+4=8; char a=5; char *p=&a;此时p+1为5+1=6; --->所以说对于数组的话 *p指向的是a[0],的地址,那么*(p+1)指向的就是a[1]的地址了。
写法: *p <--> a[0]; p[1] <</span>--> *(p+1) <</span>--> a[1] <</span>--> *(a+1) <</span>--> *(&a[0]+1); a[1] <</span>--> *(a+1) <</span>--> *(1+a) <</span>--> 1[a].
指针是地址变量,数组是地址产量,所以数组没法直接赋值 即int a[3]; int b[3]; a=b;这个是错的。
const * p --> *p 不可改变,p可改变 即int a=1; int b=2; const int * p = &a; 则可以p=&b不可以*p=3;
* const p --> P不可改变,*p可改变 即int a=1; int b=2; int * const p = &a; 则不可以p=&b可以*p=3;
千锋动态