*.cppC 컴파일러가 아닌 C ++로 컴파일 하는 파일이 있습니다. 포함 함수는 C (정확한 경우 수정하십시오!)로 정의 된 것처럼 보이는 캐스트 (마지막 줄 참조)에 의존하지만이 특수 유형의 C ++에서는 그렇지 않습니다.
[...] C++ code [...]
struct sockaddr_in sa = {0};
int sockfd = ...;
sa.sin_family = AF_INET;
sa.sin_port = htons(port);
bind(sockfd, (struct sockaddr *)&sa, sizeof sa);
[...] C++ code [...]
이것을 C ++ 파일로 컴파일하기 때문에 이것이 현재 정의되었거나 정의되지 않은 동작입니까? 아니면 *.c파일을 파일 로 옮겨서 동작을 정의해야합니까?
.c확장자 가 있으면 C 컴파일러가 자동으로 호출됩니다.