gpt4 book ai didi

c++ - 检查数组位置 X 处的某物是否为字符

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

if (selecao > 0 && selecao < 5) {
if (assentosP[selecao] == 'O') {
printf("Test");

assentosP 是一个 char 数组,它有一堆 DO 字母(D 默认)

char assentosP[2][4] = {
{'D', 'D', 'D', 'D'}, // [0][0], [0][1], [0][2]...
{'D', 'D', 'D', 'D'} // [1][0], [1][1], [1][2]...
};

我需要知道的是让 AssentosP 找出数组的 selecao 位置的字符是 D 还是O.

当我尝试它时,它给我一个错误

iso c++ forbids comparison between pointer and integer c

最佳答案

你定义了一个二维数组

char assentosP[2][4] = {
{'D', 'D', 'D', 'D'}, // [0][0], [0][1], [0][2]...
{'D', 'D', 'D', 'D'} // [1][0], [1][1], [1][2]...
};

因此表达式 assentosP[selecao] 的类型为 char[4]。您可能不会像这样将这样的数组与字符(或整数提升后的整数)进行比较

if (assentosP[selecao] == 'O') {

请注意,如果数组声明为具有 4 个元素,则索引的有效范围为 [0, 3]。因此这个声明

if (selecao > 0 && selecao < 5) {

看起来不正确。

关于c++ - 检查数组位置 X 处的某物是否为字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40517544/

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