C语言指针学习--多级指针
2014-08-07 16:39
513 查看
多级指针就是指向指针的指针。
#include <stdio.h>//标准头文件
#include <malloc.h>//动态内存的头文件
mulPoint(int** q){//定义一个指向指针的指针q,用来修改指针p的值
*q = (int*)malloc(sizeof(int));//申请一个整型变量的空间,将地址赋给q地址所指向的值,即p
**q = 5;//将刚申请的整型变变量的空间中赋值为5,从而p指针所指向的空间的值为5,即*p=5;
}
int main(void){
int *p=0;
mulPoint(&p);//将指针变量p的地址传递给mulPoint函数。由于p为指向整型的指针,所以p的地址应该是int**类型。
printf("p指向的值为:%d",*p);//输出p指针指向空间的值
}
其中动态内存不过是为了学习变量的跨函数实用,可以定义全局变量,把全局变量的地址赋值给*q,可以达到相同的效果。
#include <stdio.h>//标准头文件
#include <malloc.h>//动态内存的头文件
mulPoint(int** q){//定义一个指向指针的指针q,用来修改指针p的值
*q = (int*)malloc(sizeof(int));//申请一个整型变量的空间,将地址赋给q地址所指向的值,即p
**q = 5;//将刚申请的整型变变量的空间中赋值为5,从而p指针所指向的空间的值为5,即*p=5;
}
int main(void){
int *p=0;
mulPoint(&p);//将指针变量p的地址传递给mulPoint函数。由于p为指向整型的指针,所以p的地址应该是int**类型。
printf("p指向的值为:%d",*p);//输出p指针指向空间的值
}
其中动态内存不过是为了学习变量的跨函数实用,可以定义全局变量,把全局变量的地址赋值给*q,可以达到相同的效果。
相关文章推荐
- C语言学习笔记(18多级指针)
- 17.从零开始学习C语言--多级指针
- c语言学习零碎整理(7):数组名是指针吗?
- c语言学习零碎整理(7):数组名是指针吗?(补)
- 指针03 - 零基础入门学习C语言43
- 指针05 - 零基础入门学习C语言45
- 指针05 - 零基础入门学习C语言45
- C语言中指针的学习
- 指针07 - 零基础入门学习C语言47
- 指针02 - 零基础入门学习C语言42
- 指针01 - 零基础入门学习C语言41
- 指针06 - 零基础入门学习C语言46
- C语言学习第九讲-指针
- C语言学习笔记.指针2
- C语言学习笔记.指针1
- 指针02 - 零基础入门学习C语言42
- c语言学习零碎整理(9):传值调用,并不简单(特别是有指针的时候)
- c语言学习零碎整理(7):数组名是指针吗?
- 学习C语言指针
- 指针04 - 零基础入门学习C语言44