搜索
编程论坛
→
开发语言
→
C++论坛
→
『 C++教室 』
→ int *p[4]有啥用
标题:
int *p[4]有啥用
只看楼主
a14290719
等 级:
禁止发言
帖 子:39
专家分:0
注 册:2010-7-13
结帖率:
58.33%
楼主
问题点数:0 回复次数:4
int *p[4]有啥用
提示:
作者被禁止或删除 内容自动屏蔽
2011-11-29 12:55
lijunbo
等 级:
新手上路
帖 子:13
专家分:8
注 册:2011-10-5
第
2
楼
得分:0
以下是引用
a14290719
在2011-11-29 12:55:08的发言:
int a[3][4]={{1,2,3,4},{1,2,3,4},{1,2,3,4}};
int (*p1)[4]=a;
int *p[4]; 这个*p[4] 怎么用 怎么给他赋值
int *p[4] 这是一个数组定义式,共4个元素,每个元素的类型都是int *型(即数组的元素是指向int的指针)
注意:int (*p)[4] 是一个指针定义,这个指针指向的是一个由4个元素(int型)组成的数组。
我当时也在这个概念上纠结了很久。
其实只要理解下标操作符具有高优先级,一切都容易明白了
[
本帖最后由 lijunbo 于 2011-11-30 02:25 编辑
]
2011-11-30 02:21
rjsp
等 级:
版主
威 望:
507
帖 子:8890
专家分:53117
注 册:2011-1-18
第
3
楼
得分:0
int a[3][4] = { {1,2,3,4}, {1,2,3,4}, {1,2,3,4} };
int (*p1)[4] = a;
int* p2[
3
] = { a[0], a[1], a[2] };
2011-11-30 08:20
我是菜鸟C
等 级:
业余侠客
帖 子:74
专家分:200
注 册:2011-3-27
第
4
楼
得分:0
int a[3][4]={{1,2,3,4},{1,2,3,4},{1,2,3,4}};
int (*p1)[4]=a;//这个是数组指针,他的类型为int(*)【4】,每个指针指向二维数组的一排!
int *p[4]; //这个为指针数组,包括四个指针,*p[0],*p[1],*p[2],*p[3],其类型为int *【4】,每个指针指向一个元素,这里不能用来初始化,因为这个指针只是指向一维数组的指针,而实参为二维数组,除非你先转换。这种一维数组指针常常用来指向字符串!!!
2011-11-30 09:01
梦ambious
等 级:
论坛游民
帖 子:27
专家分:71
注 册:2011-11-25
第
5
楼
得分:0
int *p[4]这是在声明一个指针数组,还没有初始化,要先初始化了才能用,而如果是int *p1[4],你前面用的是二维数组,所以后面也应该用int*p[][]类型,然后就像二维数组那样用就行了
2011-11-30 17:20
5
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-356486-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.205765 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved