C 指向数组的指针,与存储指针的数组

指向数组的指针,与存储指针的数组


首先看int *p[4]“[]”的优先级别高,所以它首先是个大小为4的数组,即p[4];剩下的“int *”作为补充说明,即说明该数组的每一个元素为指向一个整型类型的指针。int *p[4]的存储结构如下:(存储方格横向排列或竖向排列没区别,只要按内存地址顺序排列就行,此处只是为画图方便)




    再看int (*q)[4]。它首先是个指针,即*q,剩下的“int [4]”作为补充说明,即说明指针q指向一个长度为4的数组。int (*q)[4]的存储结构如下:



int main(int argc, const char * argv[]) {

    char a='a';

    // 数组中存放的指针

    char * *arr= new char *[10];//  * *arr <=> * arr[]  *arr<=>arr[]

    arr[1]=&a;

    cout<<arr[1]<<endl;// &a(a的地址)

    cout<<*arr[1]<<endl;// a

    delete []arr;

    arr=NULL;

    return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值