포인터 함수에서 컴파일시 에러가 나네요.
글쓴이: dltkddyd / 작성시간: 금, 2012/01/27 - 11:41오후
포인터 함수로 입력된 값에 따라 호출되는 함수를 바꾸는 예문인데, 컴파일시 에러가 나네요.
#include
using namespace std;
int plus(int a, int b) {
return (a+b);
}
int minus(int a, int b) {
return (a-b);
}
int main() {
int whattodo, left, right;
int (*fp)(int ga,int gb);
do {
cout<<"1. 덧셈 2. 뺄셈"<<endl;
cin>>whattodo;
cout<<"두 개의 정수를 입력하세요\n"<<endl;
cin>>left;
cin>>right;
if(whattodo==1) {
//cout<<"덧셈"<<endl;//test
fp=plus;//이 부분에서 에러가 납니다.
}
else if(whattodo==2) {
//cout<<"뺄셈"<<endl;//test
fp=minus;//이 부분에서도 에러가 나고요.
}
}while(whattodo<1 || whattodo>2);
cout<<fp(left,right)<<endl;
return 0;
}
포인터 함수가 잘못된 것 같지는 않은데, 왜 에러가 나나요? 어느 부분을 고쳐야 할까요?
Forums:
해결했습니다.
문제는 전역이었군요. ^^. 종종 질문을 해놓고 바로 해결이 되는 이런 경우는 뭐라 해야 하죠. 여하튼 해결이 됐으니 다행입니다.
본인 맞습니다.
인증샷
우헤헤헤... 로 대신합니다.
댓글 달기