gpt4 book ai didi

c - 指针算法得到错误的输出

转载 作者:行者123 更新时间:2023-12-04 09:34:49 24 4
gpt4 key购买 nike

<分区>

在下面的程序中,这里的ptr被声明为一个整型指针的指针,并赋值了数组p[]的基地址,该数组已经被声明作为整数指针数组。假设ptrptr递增之前和ptr++之后包含地址9016(假设p的起始地址是9016) >,它将包含值 9020(假设 int 占用 4 个字节)。

所以 ptr-p 的输出应该是 4,即 (9020-9016=4)。但它给出的输出为 1 。为什么?

#include<stdio.h>
int main()
{
static int a[]={0,1,2,3,4};
static int *p[]={a,a+1,a+2,a+3,a+4};
int **ptr=p;
ptr++;
printf("%d",ptr-p);
return 0;
}

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com