<함수 포인터 복습>
밑의 소스의 빈칸을 채우시오 test 함수의 인자는 p 입니다.
( )test( ? ) ( )
{
return malloc;
}
int main()
{
( fp ) = test(printf);
return 0;
}
malloc 기본형 void *malloc(size_t size) 입니다.
size_t => int 입니다.
그러므로
void *malloc(int) 로 쓸수있습니다.
위의 빈칸을 메우게 되면
void *(*test(int(*p)(const char *, ...)))(int)
{
return malloc;
}
int main()
{
void *(*fp))(int) = test(printf);
return 0;
}
이렇게 쓸수가 있습니다.
[어제 한 구조체 포인트 보충설명]
위 소스는 구조체를 이용하여 (int char 배열) 포인터가 보는 관점을 다르게 만들어 놓은 소스입니다.
구조체 포인터는 array 를 가리키고있습니다.
그러므로 구조체가 array 를 구조체 형식으로 보고있습니다.
구조체는 int a,b,c, 가 있으므로 12byte 를 한번에 살펴 봅니다.
[PE HEADER]의 구조체 입니다.
여기서 Magic Number 가 들어있는 곳이 e_magic 인데 여기를 HEXAView 로 열어보겠습니다.
‘MZ’ 라는 매직넘버를 확인하실수 있습니다.
[리눅스 에서 보는 Magic Number]
[소스]
윈도우즈에서 확인한 것이랑 거의 차이가 없음을 알 수가 있습니다.
[elf.h 를 HEXAView 로 본화면]
elf.h 는 include 폴더에 들어있으므로 그냥 사용하면됩니다.
매직넘버가 16개가 나왔는데
왜 16개인지 는 아직 잘 모르겠습니다.
TCP/IP
IP주소와 포트 번호를 입력 하여 실행시키는 소스입니다.
[이소스를 hello_server.c 에 적용시키면]
server 쪽에는 빨간네모 친곳이 바뀌게 됩니다.
atoi(argv[1])은 포트 번호 자리가 1 번 자리 이기 때문입니다.
[이소스를 hello_client.c 에 적용시키면]
client 쪽에 빨간네모 친 곳이 바뀐곳입니다.
server 쪽을 실행시킨모습
client 쪽을 실행시킨 결과
입니다.
내용이 많이 부족한 점이 많습니다.
여러분들이 많이 지적해주시고 고치도록 하겠습니다.
'코스웨어 > 11년 내장형하드웨어' 카테고리의 다른 글
[내장형]황세선 2011년7월12일 수업내용 (31) | 2011.07.13 |
---|---|
[내장형] 2011년 7월 11일 일일 보고서(선주) (14) | 2011.07.11 |
2011.07.08 [내장형]심재원_수업내용 (11) | 2011.07.08 |
[내장형]이수란_20110707_struct & TCPechoClient (21) | 2011.07.07 |
[내장형]김동화 2011년7월 5일 수업내용 (14) | 2011.07.05 |
[내장형]이성재 2011년7월4일 수업내용 (15) | 2011.07.04 |
[내장형]최남식-2011년7월1일 수업내용 (11) | 2011.07.02 |
[내장형]김정환 - 2011년 06월 30일 일일 보고서 (10) | 2011.06.30 |