gpt4 book ai didi

c - C中的值覆盖

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

当我用 printf 打印时,我得到了不同的值。我尝试了很多来解决这个问题。但是我不知道如何解决这个问题-这是几行代码-

#Dymically allocated memory-
char **child = (char **)malloc(totalRows * sizeof(*child));

int i=0;
while ((row = mysql_fetch_row(res)) != NULL)
{
child[i] = (char *)malloc(strlen(row[1]) + 1);
child[i]=strdup(row[1]);
printf("%u %s \n", &child[i], child[i]);
i++;
}

int j=0;
for (j; j<i; j++)
printf("%u %s \n", &child[j], child[j]);

输出是

7127200 1111 
7127208 111111vv
7127216 111111sd
7127224 111111en
7127232 111113nk
7127240 111113t3

7127200 1111
7127208 1111 //..Here I am getting different value-
7127216 111111sd
7127224 111111en
7127232 111113nk
7127240 111113t3

最佳答案

我会在这里尝试一些事情:

零个 child

删除 child[i] = (char *)malloc(strlen(row[1]) + 1);//因为你已经使用 strdup 分配了内存

免费的 child [i]

char *child = (char *)malloc(totalRows * sizeof(char *));//child 是一个指向 char * 指针数组的指针

让我知道这是否适合你

关于c - C中的值覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19397085/

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