gpt4 book ai didi

c - 数组的第一项未打印正确的值

转载 作者:行者123 更新时间:2023-11-30 20:08:57 25 4
gpt4 key购买 nike

我正在尝试在代码中随机化故事的多个部分。我将随机化几个部分,但每当我的随机数为 0 时,每个数组中的第一个项目就不会打印正确的值。

srand(time(NULL));

int random = rand() % 3;

const char *residence[2];
residence[0] = "house";
residence[1] = "apartment";
residence[2] = "trailer";

const char *color[2];
color[0] = "green";
color[1] = "purple";
color[2] = "red";

printf("%s", residence[0]);

我预计打印居住数组中第一项的输出是 house,但是当我尝试居住[0] 或我的随机数为 0 时,输出为红色。

最佳答案

声明为 [2] 的数组可以容纳 2 个元素,位置为 [0] 和位置 [1]

当您尝试将某些内容放在[2]位置时,您正在破坏内存,并且结果是未定义/不可预测的。

关于c - 数组的第一项未打印正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54702074/

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