*.cpp
(Cコンパイラではなく)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コンパイラは自動的に呼び出されます。