爲什麼它顯示錯誤像ld返回1退出狀態和未定義的引用'powr(int,int)'爲什麼它顯示錯誤像ld返回1退出狀態和未定義的引用`powr(int,int)'
#include<stdio.h>
int powr (int m , int n);
int main(){
int i,m,n;
printf("print the base\n");
scanf("%d",&m);
printf("print the expoenent\n");
scanf("%d",&n);
int p ;
if (n == 1){
return m;
}
else {
p = powr(m,n/2);
if (n%2 ==0){
return p*p ;
}
else {
return p*p*m;
}
}
}
的可能的複製[C - 未定義參照SQRT(或其他數學函數)](http://stackoverflow.com/questions/5248919/c-undefined-reference-to-sqrt - 或者其他數學函數) –
C中沒有標準函數'powr(int,int)'你是否指'math.h'中的'pow(double,double)'? – Bathsheba
你放了一個'powr'函數的原型,但是你沒有提到它在問題中的定義。沒有看到定義什麼都不能說。 – haccks