Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 具有特定功能的For循环_C_Arrays_For Loop - Fatal编程技术网

C 具有特定功能的For循环

C 具有特定功能的For循环,c,arrays,for-loop,C,Arrays,For Loop,我正在做的一个程序有一个小问题 我的程序在数组上执行一个函数。该函数只能在数组的前16个元素上执行命令 我现在想做一个循环,这样函数就可以在数组的16个元素上工作。这是我的想法,但它最终进入了一个无限循环: int l = 0; for (int i=0; i<=size; i+16) { for (int j=0; j<=16;j++) { FUNCTION(INARRAY; OUTARRAY); } } 下一个问题是该函数将只遍历数组的1

我正在做的一个程序有一个小问题

我的程序在数组上执行一个函数。该函数只能在数组的前16个元素上执行命令

我现在想做一个循环,这样函数就可以在数组的16个元素上工作。这是我的想法,但它最终进入了一个无限循环:

int l = 0;
for (int i=0; i<=size; i+16)
{
    for (int j=0; j<=16;j++)
    {
        FUNCTION(INARRAY; OUTARRAY);
    }
}
下一个问题是该函数将只遍历数组的16个元素,而忽略其余元素

让它遍历接下来的16个元素并将其作为以下元素保存在Exputffer中的最佳方法是什么

当我调整解决方案时,它仍然只处理前16个元素,然后不继续处理下16个元素。

这:

i + 16
不会更改i的值,因此循环永远不会终止。该表达式只计算i+16的值,但结果被丢弃


要更改变量的值,请使用赋值=运算符,如i=i+16或i+=16。

我想我已经找到了您想要的。你必须执行它并检查它。但请注意,如果数组大小是16的倍数,则此操作有效,否则将有剩余元素与已处理的元素配对

int count16 = 0;
var tempAr[16];
for (int i=0; i<numOfArraysToGoThrough; i++)
{    
    tempAr[count16]=numOfArrayToGoThrough[i];
    if ( count16 == 15)
    {
    FUNCTION (tempAr, OUTARRAY);
    count16=0;
    }
    else
    count16+=1;

}

我早就知道了 这就是它对我的作用

for (uint64_t i=0; i<size; i+=16)
{aes_encrypt(tfm, &tempbuffer[i], &inbuffer[i]);}
这将执行以下操作 调用aes_encrypt将加密数组中的前16个字节的数据,
for循环然后跳转到第16个条目并再次执行加密

您将如何决定检查多少元素?函数本身有16个元素的限制请不要编辑帖子以询问完全无关的问题,这会让读者非常困惑,特别是目前的答案只适用于前一个问题。如果您想添加关于同一问题的更多信息和详细信息,请编辑帖子,否则请以单独帖子的形式启动一个新问题。函数为AES Encrypt/Decrypt,该函数仅对128位块进行加密/解密,然后完成,我想写一个循环,这样我就可以对一个包含16个以上元素的数组进行加密/解密。您是要在多个数组中循环,还是只在包含16个以上元素的数组中循环?或者两者都循环?循环数组1并将结果写入数组2,只循环一个数组,但您的意思是该函数只能处理包含16个元素的数组?您的函数是将数组作为参数还是仅作为值?是的,它被限制为128位的块大小,我希望循环遍历数组,以便对下一个块进行加密/解密,该块等于数组的16个元素