send(), recv() 함수에서 구조체 전달....
글쓴이: redrocki / 작성시간: 목, 2003/11/13 - 9:03오후
안녕하세요
유닉스 소켓으로 통신하는 프로그램을 하나 만들고 있습니다.
그런데 구조체형 데이터를 상대에게 넘길수가 없나요?
struct _student { int id; char name[20]; }Student; Student *a; a = (Student *)malloc(sizeof(Student)); . . 클라이언트쪽 send (servfd, &a, sizeof(a), 0); 서버쪽 recv (clientfd, &kk, sizeof(kk),0);
보내는 클라이언트는 값을 받아서 서버로 주는데..서버에서 엉뚱한 값을 받고 있네요.... 가르쳐주세요....구조체 전달요~~
Forums:
send (servfd, &a, sizeof(a), 0);
send (servfd, &a, sizeof(a), 0);
a 가 포인터 이므로 & 를 빼시고, sizeof 도 sizeof(*a) 로 바꾸셔야합니다.
---
http://coolengineer.com
댓글 달기