[함수포인터]
[함수 포인터의 이해]
int aaa(int a,int b)
- aaa는 값이 0x1000인 상수 포인터 .
- 해당 번지에는 함수 호출시 실행 될 내용이 저장되어 있다.
fct(1,2)이라하면 fct 함수를 호출하며 1,2 인자를 전달 해당 함수포인터가 가리키는 메모리 공간에
함수를 호출하며 인자 전달
[함수이름의 포인터 타입을 결정짓는 요소]
리턴 타입 + 매개변수
=> int (*fPtr) (int) 는 리턴값이 int 이고 int를 인자로 받는 모든 함수를 받는 포인터이다.
[void포인터]
[void 포인터]
자료형에 대한 정보가 제외된 , 주소 정보를 담을 수 있는 형태의 변수
포인터 연산 / 메모리 참조 관련 일에 활용 할 수 없다.
int main(void)
{
char c='c';
int n=3;
void * vp;
vp=&c;
vp=&n;
*vp=20; //Error
vp++; //Error
}
[main 함수]
[main 함수의 인자 전달]
프로그램 실행시 main 함수로 전달할 인자의 열거가 가능하다.
argc / argv 로 인자를 전달 받을 수 있도록 제한된 형태의 매개변수 선언이 가능하다.
int main(int argc,char ** argv)
{
int i=0;
printf("전달된 문자열의 수 : %d\n",argc);
for(int i=0;i<argc;i++)
{
printf("%d번째 문자열 : %s\n",i,argv[i]);
return 0;
}
}
해당 소스코드가 있을 때 컴파일을 커쳐 .exe 인 실행파일 생성후 ,
Cmd를 통해 실행시 전달 인자를 전달하면 된다.
이때 문자열은 공백을 기준으로 구분되며 , 공백을 포함하고 싶다면 ""으로 묶어서 표현한다.
이때 cmd를 이용하여 실행해야 한다.
[cmd]
- cd.. <상위 폴더로 이동>
- cd/ <최상위 폴더로 이동>
- cd tab누르기 <폴더 선택>
'C' 카테고리의 다른 글
23장 . 구조체와 사용자 정의 자료형 2 (0) | 2023.01.10 |
---|---|
22장 . 구조체와 사용자 정의 자료형 1 (0) | 2023.01.10 |
18강 . 다차원 배열 그리고 포인터 (0) | 2023.01.08 |
16장 . 다차원 배열 (0) | 2023.01.08 |
14강 . 포인터와 함수에 대한 이해 (0) | 2023.01.05 |