#include <stdio.h>
void add(int num1,int num2);
void subtract(int num1,int num2);
int main(void)
{
int x,z;
char c;
void (*pointer)(int, int);
printf(\"add 함수의 주소 : %x\\n\",add);
printf(\"subtract 함수의 주소 : %x \\n\",subtract);
printf(\"입력 : \");
scanf_s(\"%d %c %d\", &x, &c, &z);
if(c==\'+\')
pointer=add;
else if(c==\'-\')
pointer=subtract;
else
printf(\"두 번째 연산자는 \'+\'또는 \'-\'를 입력하세요.\\n\");
pointer(x, z);
return 0;
}
void add(int num1,int num2)
{
int result;
result=num1 + num2;
printf(\"%d + %d = %d입니다.\\n\",num1,num2,result);
}
void subtract(int num1,int num2)
{
int result;
result = num1 - num2;
printf(\"%d - %d = %d입니다.\\n\",num1,num2,result);
}
-------------이게 문제의 소스고
스샷에서 보면 알겟지만
내가 입력을 햇으면 결과로
1 + 1 + 2입니다.
가 떠야되는데 안뜸 ㅅㅂ!!
씨 코딩 원래 이렇게 하냐
ㄴ오오미 감사감사 scanf하면 오류뜨겟지만 막무가내로 해보겟슴
else 로 가면 어캐 되냐 pointer 변수가 초기호ㅏ 안되있자나
java횽 감사 횽말대로 하니깐 됫슴 ㅎㅎ
로하로하알로//???뭔말인지모르겟지만 횽말대로 =입력하면 경고뜨네..... 아직 포인터변수 초기화 하는 방법은 모르겟엉 그냥 빈 함수를 집어 넣으면 그게 초기화인가?
java//아하 , 그냥 포문으로 할라햇는데 그게 더 편한거구나
헐 완벽함 말을 잃엇음 저렇게 쓰란건줄 이해못햇다니.... 공부할게 많구나ㅠㅠ