当前位置:首页 > 编程笔记 > 正文
已解决

Linux C语言进阶-D11多级指针、void指针及const

来自网友在路上 185885提问 提问时间:2023-11-03 00:00:25阅读次数: 85

最佳答案 问答题库858位专家为你答疑解惑

多级指针

多级指针变量:指向指针变量的指针变量

在下图中,定义一个a数组,再定义一个指针数组p[2],其中p数组中存储的是地址,再定义一个二级指针q指向p[0],即&p[0],又由于&p[0]就是p,所以q=p

 指针数组的打印

1、使用数组s打印

2、使用二级指针p打印

p指向s的首地址,所以*(p+i)就是地址依次遍历,并解引用

void指针

1、一种不确定数据类型的指针变量,可通过强制类型转换让该变量指向任何数据类型的变量

2、void指针在没有强制类型转换前不能进行任何指针的算术运算

        形式:void* <指针变量名称>

注意下图9~13行的细节,在9和12也可以直接赋值,p=&m,q=&n

 使用void指针访问一维数组

void指针应用场景:在下图中不限制指针类型,void指针可转换成任何类型,使得函数功能更加强大

const变量

const <数据类型> 变量名 = [<表达式>];为了使得变量的值不能修改

常量指针:const <数据类型> *<指针变量名称> = [<指针运算表达式>];

        不可通过指针改变其目标的数值

指针常量:<数据类型> * const <指针变量名称> = [<指针运算表达式>];

        不能修改指针变量存储的地址值

main函数参数

  

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"Linux C语言进阶-D11多级指针、void指针及const":http://eshow365.cn/6-30617-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!