交替遍历 cJSON 数组

Iterating through a cJSON Array alternatively

这是我正在使用的代码

cJSON *IDs = cJSON_GetObjectItem(tree, "fruitIds");
cJSON *mangoe;

cJSON_ArrayForEach(mangoe, IDs) 
 {

}

我的 JSON 对象看起来像这样 static char *buffer = "taskData\":[{\"treeId\":123456,\"fruitIds\":[11111,00,22222,00,33333,00,44444,00,55555,00,66666,00,77777,00,88888,00,99999,00],\"numberOfFruits\":9};

我想做的是交替遍历我的 JSON 数组。例如,首先查看存储中是否有 1111,同样检查是否有 2222 并更新我与 11 比较的每个值前面的 00 变量,如果我存储该变量。

为了实现这一点,我需要了解以下内容,

  1. 有没有办法以二的倍数遍历数组。 (如果不是以类似方式执行此操作的最佳方法是什么)注意:-我需要比较的值是数组的偶数索引
  2. 遍历数组时如何更新当前索引前面的数组位置。

提前致谢!!

我找到了上述问题的答案

似乎使用 cJSON_ArrayForEach 我们不能 运行 替代索引处的 forloop。相反,我使用了这样的东西,

查看当前索引前面的索引

mangoe->next->valueint

更新下一个索引的值

cJSON_SetIntValue(mangoe->next, 11);