是否有可能寫在C中的通用求和函數?函數的通用總和在c
我想寫一個處理任何數字類型的求和函數。
double sum(void* myArrayVoidPtr, size_t arrayLength, int arrayType){
int i;
double result = 0;
//The goal is to make this next line depend on arrayType
//e.g. if(arrayType == UINT16)
unsigned short* myArrayTypePtr = (unsigned short*) myArrayVoidPtr;
for(i = 0; i < arrayLength; i++){
result += *myArrayTypePtr;
myArrayTypePtr++;
}
return result;
}
是你可以,但不喜歡這樣。 – haccks
「任意」數據不會總結爲兩倍。而'+'也不適用於「任意」類型。 –
將問題從「任意」更改爲「任何數字」。 – naroom