如果有一个非常大的数组,Arr [255]。我正在写一个函数,该函数应该在该数组中的任何一个或多个字节被其他函数更新时执行任务。你能用最好的方法帮助我吗?如何在数组的字节更改时调用函数?
对于Arr的前3个字节的任何更改,我可以像下面这样调用Task()函数。
int main (void)
{
while (1)
{
CheckArrayUpdated();
}
}
void CheckArrayUpdated (void)
{
static char ArrPre [3];
if (
(ArrPre [0] != Arr [0]) ||
(ArrPre [1] != Arr [1]) ||
(ArrPre [2] != Arr [2])
)
{
Task();
ArrPre [0] = Arr [0];
ArrPre [1] = Arr [1];
ArrPre [2] = Arr [2];
}
else;
}
我怎么能做到这一点整个阵列,而无需耗费太多的处理时间,提高代码的长度和大小?
你可以修改'Task()'来返回已更改索引的列表吗? – usr2564301
嗨Jongware,我不知道数组的哪个索引正在改变。 – ajishalfred