1
# define COMPLEX_FLOAT float _Complex 
# define _Complex_I 1.0fi

これは、私のプロジェクトのメイン ヘッダー ファイルにあります。

extern COMPLEX_FLOAT quantum_conj(COMPLEX_FLOAT a);

これは、別のヘッダー ファイルにあります。ただし、error C2061: syntax error : identifier 'quantum_conj'MSVC を使用してコンパイルすると取得されます。を含め<math.h>ました。

float _ComplexWindowsのような識別子はないと思います。このプロジェクトは、UNIX/LINUX ファミリ用に正常にコンパイルされます。_Complex_I and _Complexまた、これらのマクロ ( ) が<complex.h>gnu/bsd ディストリビューションに存在することも知りました。ただし、complex.hWindows 用のヘッダー ファイルはありません。

しかし、これを Windows 用にコンパイルしたいと思います。助けてください。前もって感謝します。

4

1 に答える 1

1

複雑な演算は C99 の機能です。また、MSVC は C89 に近いものしかサポートしていません。MS は、C コンパイラが C89 を超えることはないと公言しています。

したがって、別のコンパイラが必要です。たとえば、GNUコンパイラがその仕事をします。Windows では、通常 mingw ポートを意味します。

于 2013-04-15T10:38:04.860 に答える