gpt4 book ai didi

c - 在 C 中打印数组

转载 作者:太空狗 更新时间:2023-10-29 15:19:57 25 4
gpt4 key购买 nike

我刚刚开始学习 C,所以我非常糟糕,因为我来自基础 Python。我正在尝试使用 for 循环打印数组中的元素,但结果不正确。

#include <stdio.h>
#include <math.h>
int main()
{
int array[]={0,1,2,3,4};
int i;
for (i=0;i<5;i++);
{
printf("%d",array[i]);
}
printf("\n");
}

我的输出是

134513952

我不知道为什么要打印这个。

最佳答案

你多了一个分号。

 for (i=0;i<5;i++);
^
|
here -----+

那个分号意味着你的 for 循环有一个空循环体,你最终在循环完成后打印,等价地:

printf("%d", array[5]);

由于该值超出了数组的末尾,您会得到未定义的行为和一些奇怪的输出。

编者注:您应该研究提供更好警告的编译器。 Clang ,例如,给出这个警告,即使没有传递特殊标志:

example.c:7:20: warning: for loop has empty body [-Wempty-body]
for (i=0;i<5;i++);
^
example.c:7:20: note: put the semicolon on a separate line to silence this
warning

关于c - 在 C 中打印数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18884487/

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