A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 小Who 中级黑马   /  2015-10-26 23:32  /  831 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

#include <stdio.h>
int main(){
    int arr[4] = {2,3,6,8};//定义一个整型数组
    int (*p)[4];//定义一个数组指针
    p = &arr;// *p = arr;等效
    printf("(*p)[0] = %d----arr[0] = %d\n",(*p)[0],arr[0]);
    printf("%d\t%d\t%d\n",(*p)[1],(*p)[2],(*p)[3]);
    printf("p存储的地址:%p---arr[0]的地址:%p---arr的地址:%p\n",p,&arr[0],&arr);
    return 0;
}
如果想更节省,int (*p)[4] = {2,3,6,8};可以加什么东西替换他么,打印该数组指针的值时,为什么直接用*p或(*p)[4]都不行,编译通不过

1 个回复

倒序浏览
不错,写的挺好,点赞!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马