-1
可能是一個非常簡單的問題,但我找不出原因。所有給定的代碼都在同一個文件中。不能返回靜態數組
這是陣列中的一個的定義。它是在每種方法之外定義的。
unsigned char KEY_40_COMPARE_VALUES[] = {
85,102
,119,134
,147,158
,165,169
,169,165
,158,147
,134,119
,102,85
,67,50
,35,22
,11,4
,0,0
,4,11
,22,35
,50,67
};
這是代碼:
unsigned char * getCompareValuesForIndex(char index)
{
if (index == 0)
{
return KEY_28_COMPARE_VALUES;
}
if (index == 1)
{
return KEY_30_COMPARE_VALUES;
}
if (index == 2)
{
return KEY_32_COMPARE_VALUES;
}
if (index == 3)
{
return KEY_33_COMPARE_VALUES;
}
if (index == 4)
{
return KEY_35_COMPARE_VALUES;
}
if (index == 5)
{
return KEY_37_COMPARE_VALUES;
}
if (index == 6)
{
return KEY_39_COMPARE_VALUES;
}
else
{
return KEY_40_COMPARE_VALUES;
}
}
這是編譯錯誤,我得到:
conflicting types for 'getCompareValuesForIndex'
你在哪裏調用這個函數'getCompareValuesForIndex'? – Gopi
您也可以用查找表替換所有這些if語句。 – OldProgrammer
你能介紹一下函數的定義嗎?還在項目中搜索單詞'getCompareValuesForIndex'檢查是否有其他定義/其他用途的名稱 –