指针2

iuh①将字符串的ip地址转换为整数

char a[] = "192.168.2.5";

unsinged int ip=0;

unsinged char *p=(unsingned char *)&ip;

int a1,a2,a4,a4;

sscanf(a,"%d,%d,%d,%d",a1,a2,a3,a4);//格式化读取char

p[0]=a4;

p[1]=a3;

p[2]=a2;

p[3]=a3;

print("%u\n",ip);

通过指针对多维数组进行排序

char a[2][5]={{4,5,6,7,8},{1,8,21,32,4}};

char *p=(char*) a;

int i,j;

for(i=0;i<10;i++)

{

for(j=1;j<10-i;j++)

{

if(p[j]<p[j-1])

{

char tmp = p[j];j

p[j]=p[j-1];

p[j-1]=tmp;

}

}

}

②指针数组

地址在32位为四位无符号整数 64位位八位无符号整数

char* a[10],int* b[10] 长度都为80(64位系统下)

指针数组和数组一样使用

③二级指针·

指向指针的指针

int *p=&a;

int **p1=&p;

不可以直接指向变量 可以通过指向指针在指向变量

pp为地址 *pp为*p的地址 **pp为*p指向的变量

④二级指针与指针数组的关系

int *a[10];

int **p=a;·

a[0]的类型为int *;

⑤多级指针

几个*就是几级指针,能用低级指针解决的问题就用低级解决。

**pp代表a的值

*pp为a的地址

pp为指针的地址

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容