gpt4 book ai didi

c - 是否有必要将 0 传递给数组

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

如果我不将零传递给数组,这绝对可以正常工作,为什么这样呢?什么时候真正计算添加传递零或指定数组为空?请给我一个例子。

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

int main()
{
int i= 34;
char array[10]={0};

itoa(i, array, 10);

printf("%s\n", array);

return 0;
}

最佳答案

在这里,您不需要将数组初始化为零。 itoa 不需要初始化它使用的缓冲区。无论如何,它只会覆盖您将数组初始化为的任何内容。

如果您正在做的事情实际上需要数组以全零开头,则 = {0} 是必需的。如果你不初始化数组,访问它的值是未定义的行为:

int array[10];
int x = 0;
for (int i = 0; i < 10; i++) {
// Probably adds up garbage; might do anything.
x += array[i];
}
printf("%d\n", x); // Probably prints garbage; might do anything.

关于c - 是否有必要将 0 传递给数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22423044/

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