首页
社区
课程
招聘
未解决 [求助]简单的指针数组问题 小白求助
发表于: 2021-4-9 18:42 6609

未解决 [求助]简单的指针数组问题 小白求助

2021-4-9 18:42
6609

图片描述
二个问题:
第一个:这个(int*)2;,他是把这个赋值给p指针的第9个位置吗
第二个:如果上面成立,那么他是把数字2放到第9个位置 还是把数字2的地址放进去

 

我是小白 看教程的 但是那边好像没说 我就好奇问问
不要骂我谢谢!


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 1472
活跃值: (2800)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
2
把数字2放到第9个位置
2021-4-9 19:13
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
3
liwugang 把数字2放到第9个位置
谢谢
2021-4-9 19:19
0
雪    币: 4239
活跃值: (4208)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4

p[9]  的内存是  p[0] - p[8]

数组下标是 0  你这样写是错的.

int *p[10]  才有  p[9] = 



(int *)2    就是 2  只不过是把 2 当成一个指针地址(0x00000002)写入

最后于 2021-4-9 22:47 被Mxixihaha编辑 ,原因:
2021-4-9 22:46
0
雪    币: 74
活跃值: (1259)
能力值: ( LV4,RANK:41 )
在线值:
发帖
回帖
粉丝
5
再好好学学数组和指针吧。
2021-4-9 23:20
1
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
6
Mxixihaha p[9]  的内存是  p[0] - p[8]数组下标是 0&nb ...
这个 我可能没注意 一直在想这个问题 谢谢了 
2021-4-9 23:44
0
雪    币: 0
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
7
XiaoFeng8bit 再好好学学数组和指针吧。
谢谢 
2021-4-9 23:45
0
雪    币: 785
活跃值: (418)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
就是把2,强制转换成int*,然后放到p[9] 当然,这个时候你已经方位越界了。
2021-4-10 17:39
0
雪    币: 4635
活跃值: (2161)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
5楼的图楼主看一下。
int *p[9] 声明一个 整形指针数组(int *[]),数组长度为9,分别是p[0],p[1],p[2],p[3],p[4],p[5],p[6],p[7],p[8]。
每一个成员可以存放一个 int* 类型的指针
p[9] = (int*)2; 该行p[9]已经越界,程序的随机数据(可能有用,可能没有用处)被强行赋值,严重情况程序会立马崩掉
前面说了每个成员可以赋一个int*类型的值,你这里赋值2,指针的话就是0x00000002
2021-4-10 20:41
1
雪    币: 1416
活跃值: (4398)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
int* a[9]跟int a[]的差别
2023-2-13 23:38
0
游客
登录 | 注册 方可回帖
返回
//