에러 모음

4*(a)를 4(a)로 잘못 썼을 때 나왔던 에러

라이피 (Lypi) 2018. 6. 3. 23:07
반응형

#define discriminant(a,b,c) (((b)*(b))-(4(a)*(c)))

라는 매크로 함수를 


double a = 1, b = 1, c=1;

discriminant(a, b, c);

이렇게 호출했는데


명백한 호출의 괄호 앞에 오는 식에는 함수 (포인터) 형식이 있어야 합니다.

항은 1개의 인수를 받아들이는 함수로 계산되지 않습니다.

이런 에러가 뜹니다.


// 에러가 난 이유 자체는 간단하다. 4*(a)라고 써야할 식을 4(a)로 써서 그렇다.

// 컴파일러가 4(a)를 함수 호출식으로 생각해서 에러를 보여줬다는 뜻이다.

반응형