如果有一個非常大的數組,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