使用指针到达数组成员

379

我试图使用指针到达数组成员。Array的第一位成员地址是23fe20;当我写“ 1”时,程序必须显示23fe24(因为23fe20 + 4 * 1 = 23fe24),但不能以这种方式工作。程序输出为:23fe30 ..我可以使用*(pointer + i)来访问数组成员,但是我想使用地址。我怎样才能做到这一点?对不起,我的英语,非常感谢:'(

int main(int argc, char *argv[]) {
int array[5]={46,85,111,1976,2};
int *pointer,indices;
pointer=array;
int i=0;

printf("Array members : ");
for(i=0;i<=4;i++){
    printf("%d ",array[i]);
}
printf("\n\n Array's First member' : %x\n\n",&*pointer);

printf("Which array member do you want to reach? ");
scanf("%d",&indices);


printf("\n Your member adress : %x",pointer+sizeof(int)*indices);

return 0; }
聚丙烯

sizeof(int)编译器已经为您计算了使用的地址因此,您的计算将其指向其他位置(因为相同的计算执行了两次)。您只需向指针添加整数类型即可访问元素。

这样:

printf("\n Your member adress : %p",(void*) (pointer+indices));

您还应该%p在其他打印地址的地方使用

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用灵活的数组成员实现堆栈

来自分类Dev

Arduino类数组成员

来自分类Dev

C#数组成员

来自分类Dev

Arduino类数组成员

来自分类Dev

OR 子句或数组成员检查

来自分类Dev

屏蔽数组成员的位

来自分类Dev

UPPAAL:检查数组成员

来自分类Dev

返回指向char数组成员的指针会导致什么意外行为?

来自分类Dev

警告/检测指针减法,它们都不指向数组成员

来自分类Dev

为什么使用灵活的数组成员进行的结构初始化无效但对于固定大小的数组成员却有效?

来自分类Dev

使用数组并在结构中分配内存(灵活的数组成员)

来自分类Dev

使用strcpy()对结构的char数组成员进行分段错误

来自分类Dev

如何使用数组成员作为bash中的搜索或替换模式?

来自分类Dev

使用数组成员作为fortran中do循环的控制变量

来自分类Dev

如何在Javascript中使用数组成员深度复制(克隆)对象?

来自分类Dev

使用strcpy()对结构的char数组成员进行分段错误

来自分类Dev

不能使用变量访问字段内的数组成员

来自分类Dev

是否可以使用数组成员构造此文件

来自分类Dev

没有初始化的C ++数组成员

来自分类Dev

C ++中类数组成员的初始化

来自分类Dev

C ++类,数组成员的大小由CTOR传递

来自分类Dev

嵌套结构中的灵活数组成员

来自分类Dev

类具有带动态数组成员的类

来自分类Dev

用char数组成员填充并集

来自分类Dev

C ++无法更改数组成员

来自分类Dev

C ++中的灵活数组成员的可移植仿真?

来自分类Dev

Swift:访问数组中的元组成员

来自分类Dev

在C中访问灵活数组成员

来自分类Dev

Python-组顺序数组成员