ここには2つの構造があります。最初は:
struct complex {
double real, imaginary;
};
セミコロンで終わる必要があることはわかっています。
しかし、これは機能を備えています
struct complex add_complex(struct complex c1, struct complex c2) {
struct complex c3;
c3.real = c1.real + c2.real;
c3.imaginary = c1.imaginary + c2.imaginary;
return c3;
}
ここで、末尾にセミコロンを含めないと、コンパイラはエラーを生成しません。なんで?