J'ai écrit une application en utilisant Xcode (en C), qui repose fortement sur l'utilisation de nombres complexes. à savoir:C: nombres complexes dans Xcode et VS2015
#include <complex.h>
...
float a, b;
complex float z;
z = a + I * b;
... etc
Maintenant, cette notation pour les nombres complexes fonctionne très bien dans Xcode, et est la solution parfaite lors de la construction OS X versions compatibles de l'application. Cependant, maintenant j'ai besoin de construire une version de Windows, donc j'ai importé le même code dans Visual Studio 2015. Mais malheureusement, cette notation ne fonctionne pas, car l'implémentation de VS de nombres complexes est très différente. Et après avoir recherché mon problème, j'ai échoué à trouver des informations utiles sur la façon de gérer des nombres complexes de telle manière, à compiler avec succès sur les deux IDE.
Ceci est peut-être dû à ma mauvaise compréhension de cette norme C99 ou peut-être que ce n'est tout simplement pas possible. Mais, même si je pense que je pourrais réécrire le code C en utilisant la manière propre à VS de gérer des nombres complexes, ce ne serait pas idéal, car je prévois maintenant de développer davantage l'application pour les deux systèmes d'exploitation. Et il faudrait trop de temps pour écrire deux versions du même code en parallèle.
Donc, vous utilisez un Oldtimer et se plaignent qu'il ne conduit pas aussi vite qu'une voiture de sport moderne. MSVC n'est pas conforme aux normes. Utilisez un compilateur compatible. – Olaf
Copie possible de [support complexe C99 avec Visual Studio] (http://stackoverflow.com/questions/1063406/c99-complex-support-with-visual-studio). Tl, dr la meilleure façon que je pourrais penser est de remplacer tous les opérateurs et les types de données par des préprocesseurs définit/macors, puis implémenter votre propre gestion pour VS. – Groo
Pouvez-vous utiliser C++? Je crois que le compilateur C++ de Visual Studio est plus conforme que leur compilateur C (si je me souviens bien, le compilateur VS C est toujours gelé à C90). Je ne sais pas comment il serait difficile de porter la version Mac en C++ (et le support de XCode en C++, mais je me doute que c'est bon). A défaut, vous pourriez essayer d'installer gcc sur Windows (voir http://mingw-w64.org/doku.php) et nous au lieu d'une plainte visuelle non-standard. – thurizas