我正在嘗試編寫一個程序,該程序將:該函數返回一個指向double值數組的最大值的指針。如果size爲0,則返回特殊指針值NULL(或0)。C++返回指針
我不確定我的邏輯是否正確,或者函數是返回一個地址還是temp的值。
const double * pMax(const double a[], size_t size){
double * ptr;
for(size_t i = 0; i < size; i++){
if(a[i] > a[i+1]){
ptr = a[i];
}
}
return ptr;
}
錯誤:不能轉換 'const的雙' 到 '雙*' 在分配 PTR = A [1];
永遠不會返回指向局部變量的指針。 – 2014-10-08 02:47:05
這裏是一個類似函數的參考實現http://www.cplusplus.com/reference/algorithm/max_element/ – 2014-10-08 02:48:10
我不確定你的代碼的任何一行是否正確。您沒有找到最大值,返回一個指向它的指針,或者在大小爲0時返回NULL。 – stark 2014-10-08 02:57:07