gpt4 book ai didi

c - 使用 DMA 打印给定值

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

我正在编码以使用 realloc 在动态方法中获取给定数字的值。在这种情况下,新尺寸元素的 O/P 打印的值不正确。它在一两个元素之后打印一些未知的垃圾值。

这个程序在运行时调整整数值的大小。

    #include<stdio.h>
#include<stdlib.h>

int main()
{
int *ptr,n,newsize;

printf("Enter size Elements\n");
scanf("%d", &n);

ptr = (int*) malloc (n * sizeof(int));

printf("Enter the Elements\n");
for(int i=0;i<n;i++)
{
scanf("%d", ptr+i);
}
printf("Elements are\n");
for(int i=0;i<n;i++)
{
printf("%u\n", *(ptr+i));
}

printf("Enter the New Size of the Elements\n");
scanf("%d", &newsize);

ptr = realloc(ptr,newsize);

printf("Enter the new Elements\n");
for(int i=0;i<newsize;i++)
{
scanf("%d", ptr+newsize);
}
printf("New Elements are\n");
for(int i=0;i<newsize;i++)
{
printf("%u\n", *(ptr+i));
}

return 0;
}

期待:

    1
2
3
4

实际结果:

    1
2
4566745
4534665

最佳答案

在按照 Johnny Mopp 的说法进行以下修正后,它现在可以正常工作了。

printf("New Elements are\n");
for(int i=0;i<newsize;i++)
{
printf("%d\n", *(ptr+i));
}

关于c - 使用 DMA 打印给定值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58439255/

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