gpt4 book ai didi

c - 在 x 元素的数组(int)中,数组(静态)的最后一个索引是什么? a) x-1 b) 程序员定义的?

转载 作者:行者123 更新时间:2023-11-30 18:23:37 25 4
gpt4 key购买 nike

假设我有一个数组 int a[20]我只接受 10 个元素作为输入(并且未初始化)..所以当我们引用元素时它不应该只是 10 个吗?那些空的也算作元素吗?

例如: 在上面的数组中,总元素只有 10,但最后一个索引是 19

这是正确的吗?

编辑: 是的,这是我的一项测试中的一个问题,同样是这样的:

#include<stdio.h>
main()
{
int a[100],i;
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
//will the value of a[99] also come under "elements"?
}

最佳答案

您应该计算有多少元素具有有效值......并且不要尝试读取未初始化的元素。

int a[7];
int n = scanf("%d%d%d%d%d%d", a+0, a+1, a+2, a+3, a+4, a+5);
if (n >= 1) {
printf("last one: %d\n", a[n - 1]);
//printf("UB: %d\n", a[n]);
//printf("UB: %d\n", a[6]); //a[6] is uninitialized / not assigned a value
}

关于c - 在 x 元素的数组(int)中,数组(静态)的最后一个索引是什么? a) x-1 b) 程序员定义的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52741060/

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