2012-07-13 2 views
0

저는 C++에서 초보자입니다. 그러나이 응용 프로그램을 컴파일하려고하는데 오류가 발생합니다. '구문 오류 : 예기치 않은 형식'P_HDR '. 그것의 모든 http://www.binarytides.com/blog/raw-sockets-packets-with-winpcap/구문 오류 : 예기치 않은 형식 'P_HDR'

pseudo_header.source_address = inet_addr("1.2.3.4"); //forge it >:) srcip.s_addr; 
pseudo_header.dest_address = inet_addr("203.200.89.200"); 
pseudo_header.placeholder = 0; 
pseudo_header.protocol = IPPROTO_TCP; 
pseudo_header.tcp_length = htons(sizeof(TCP_HDR) + strlen(dump)); 
memcpy(&pseudo_header.tcp , tcphdr , sizeof TCP_HDR); 

unsigned char *seudo; 
    seudo = new unsigned char(sizeof P_HDR + strlen(dump)); 
memcpy(seudo, &pseudo_header, sizeof P_HDR); 
memcpy(seudo + sizeof P_HDR , data , strlen(dump)); 

이 라인에서 볼 수, 당신은 더 많은 코드를 필요로하는 경우 알려줘하면 오류

seudo = 새로운 서명 숯불입니다 (sizeof 연산자 P_HDR + 나 strlen (덤프));

답변

2

"P_HDR"이전에 "TC"를 놓친 것일 수도 있습니다.

+0

물론 @ retired-ninja가 맞습니다. 대괄호 (괄호)는 타입 – fork0

+0

주위에 필요하고 P_HDR은 타입 (소스를 보면서)입니다. – fork0

+1

내 경험에 의하면 규칙은 좋지만 항상 괄호를 사용한다는 것은 알고 있습니다. 당신이 그것을 설명 할 필요가있는 당신의 책상에 겁을 먹은 사람들을 불러 일으키지 않기 때문에 더 낫습니다. :) –

관련 문제