gpt4 book ai didi

c - realloc 将对旧指针做什么

转载 作者:太空宇宙 更新时间:2023-11-04 00:20:27 24 4
gpt4 key购买 nike

<分区>

我对 realloc 函数有疑问。应用realloc函数后旧指针的内容会改变吗?代码是

main () {
int *a, *b, i;

a = calloc(5, sizeof(int));
for (i = 0; i < 5; i++)
a[i] = 1;
for (i = 0; i < 5; i++)
printf("%d", a[i]);
printf("\n%p\n", a);

b = realloc(a, 200000 * sizeof(int));
if(b == NULL)
printf("error\n");
for (i = 0; i < 5; i++)
printf("%d", a[i]);
printf("\n");
for (i = 0; i < 10; i++)
printf("%d", b[i]);

printf("\n%p %p\n", a, b);
}

输出是

11111
0x2558010
00111
1111100000
0x2558010 0x7f29627e6010

指针a还是指向同一个地址,只是内容变了。

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