#define, 매크로 사용 예
// 첫번쨰 예제 #include #define PI 3.14 #define MAX(x,y) (x>y) ? x : y //macro 함수와 상수는 복사의 의미를 가지고 있다. void main() { int a=123, b=456; printf("PI=%lf\n", PI); printf("The Max is %d\n", MAX(a,b)); } // 두번째 예제 #include #define SWAP(x,y) {int t; t=x; x=y; y=t;} // x와 y를 바꿔주는 함수. void main() { int a=5, b=10; printf("a=%d\tb=%d\n", a, b); SWAP(a,b); printf("a=%d\tb=%d\n", a, b); } // 세번째 예제 #define SQU(x)..
2009. 3. 4.
구조체, 공용체 종류 및 예
//단순 구조체 #include struct score{ char name[20]; int kor, eng, mat; }; typedef struct score Score; void structPrint(char*, int, int, int); void main() { Score sd = {"Hong gil dong", 80, 90, 100}; structPrint(sd.name, sd.kor, sd.eng, sd.mat); } void structPrint(char *cp, int i, int k, int j) { printf("%s : %d, %d, %d\n", cp, i, k, j); } // 중첩 구조체 #include struct AA{ int a; long b; }; struct BB{ int..
2009. 3. 4.
포인터
#include // 포인터의 포인터 예제 char *c[]={"ENTER", "NEW", "POINT", "FIRST"}; char **cp[]={c+3, c+2, c+1, c}; char ***cpp=cp; void main() { printf("%s\n", **++cpp); // PIONT printf("%s\n", *--*++cpp+3); // ER printf("%s\n", *cpp[-2]+3); // ST printf("%s\n", cpp[-1][-1]+1); // EW } // 단순한 포인터 예제 void main() { int x, y; int *px, *py; x=5; px=&x; y=*px/2+10; py=&y; printf("x : %d, y : %d\n", x, y); // 5, 1..
2009. 3. 4.