함수 포인터(2)
앞에서 썻듯이 함수 포인터를 다양한 함수를 for문을 이용해서 루프에서 사용한다고 하면, 실제로 함수의 포인터를 인자로 보낼 수 있는 방법도 존재한다(그러니까 함수 포인터겠지만) #include int sum(int a, int b);// 합 구하기 함수 void ptrfunction( int (*fp)(int, int ), int a, int b ); // 함 구하는 함수 포인터를 받는 함수 void main() { ptrfunction(sum, 10, 20);// sum 함수의 포인터와 그 인자값을 보내기 위해 10, 20을 보낸다. } int sum(int a, int b ) { return a+b; } void ptrfunction( int (*fp)(int, int ), int a, int b ..
2010. 3. 10.
가변 인수
printf나 scanf를 보면 함수지만 보내지는 인자값이 매번 틀리다는걸 알 수 있다. 그렇다면 어떻게 그게 가능한 것인가? 가변 인수에 대해서 알아보자 #include #include void printChar( int n1, ... );// ... 이 부분이 가변 인수를 생성한다. void main() { printChar(3, 'A','B','C'); printChar(4, 'A','B','C','D'); printChar(5, 'A','B','C','D','E');// 실행 예 } void printChar( int n1, ... ) { va_list varl;// va_list 타입의 변수 생성(무조건) char str[6];// 실제로는 동적 할당을 해서 써야겠지만, int i; va_sta..
2010. 3. 8.