Programming/C++
[C] Macro, comp Funtion
OKOK
2017. 3. 29. 10:35
/*------------------------------------------------------------------------------------------
@ Pratice C laguage
Author : SAM
Created : 29-03-2017
Modified : 29-03-2017
Language/ver : C in MSVS2015
Description : Practice
KEYWORD : Macro, Constant, Preprocessor
------------------------------------------------------------------------------------------*/
#include<stdio.h>
#define SQUARE(x) x*x
int square(int x);
int main(void) {
int a;
printf("Input a number(int) : ");
scanf_s("%d", &a);
printf("Square of %d : %d\n", a, SQUARE(a + 3));
printf("Square of %d : %d\n", a, square(a + 3));
return 0;
}
int square(int x) {
return x*x;
}
1. macro 는 치환이므로 a+3*a+3 연산이 일어난다 -> 수정 #define SQUARE(x) ((x)*(x))