小编ikr*_*bbe的帖子

(双)for循环,在C中具有变量索引

我有一个带有ID的缓冲区,看起来像这样 InBuffer={ID1,ID2,ID3,...}

我需要迭代,每次在函数中使用ID,该函数返回指向分配给此ID的数据的指针和数据的大小.然后我需要用结果填充另一个缓冲区

OutBuffer={ID1,SIZE1,DATA1.WORD1,...,DATA1.WORDSIZE1,
    ID2,SIZE2,DATA2.WORD1,...,DATA2.WORDSIZE2,
    ...,
    IDN,SIZEN,DATAN.WORD1,...,DATAN.WORDSIZEN
}
Run Code Online (Sandbox Code Playgroud)

我遇到了为此形成整个for循环及其索引的问题,主要是因为每个SIZE变量可能不同.它应该很简单但我似乎无法使它工作.

在此先感谢您的帮助.

// For example
// Iterate through the remaining of the Request Buffer (m=0,1 already set) 
for (m = 2; m < InBuffer; m++)`
{ 
  OutBuffer[m] = InBuffer[m];
  returnPointersToDataAndSizeFunction(InBuffer[m], &SIZE, &DATA);
  OutBuffer[m + 1] = SIZE; // e.g. SIZE = 2, therefore DATA has 2 fields 
  OutBuffer[m + 2] = DATA.1; // first field  
  OutBuffer[m + 3] = DATA.2; // second field
  // and so on
}
Run Code Online (Sandbox Code Playgroud)

c arrays for-loop

0
推荐指数
1
解决办法
105
查看次数

标签 统计

arrays ×1

c ×1

for-loop ×1