Maison > développement back-end > C++ > Comment choisir le bon standard C lors de la compilation avec g ?

Comment choisir le bon standard C lors de la compilation avec g ?

Mary-Kate Olsen
Libérer: 2024-11-12 07:55:02
original
629 Les gens l'ont consulté

How Do I Choose the Right C   Standard When Compiling with g  ?

Choisir le standard C dans les compilations g

Compiler du code C avec g nécessite de prendre en compte la version standard C pour éviter des erreurs potentielles. Par défaut, g utilise une version standard spécifique, mais elle peut être remplacée à l'aide d'arguments de ligne de commande.

Version standard par défaut

La version standard par défaut utilisée par g peut être déterminé en exécutant la commande :

g++ -dM -E -x c++ /dev/null | grep -F __cplusplus
Copier après la connexion

Cette commande génère une macro qui définit la macro du préprocesseur __cplusplus, indiquant la version du standard C utilisée. Par exemple :

#define __cplusplus 199711L  // Represents C++98
Copier après la connexion

Remplacement de la version par défaut

Pour remplacer la version standard par défaut, utilisez l'argument -std= suivi de la version souhaitée. Par exemple, pour utiliser C 17, la commande serait :

g++ -std=c++17 example.cpp
Copier après la connexion

Recommandation

L'utilisation de l'argument -std= est recommandée pour plusieurs raisons :

  • Garantit la compatibilité avec la version prévue de C.
  • Empêche les erreurs inattendues dues à l'utilisation d'une norme obsolète ou non prise en charge.
  • Facilite la collaboration entre différents systèmes et chaînes d'outils avec différentes normes par défaut. .

Références

  • [g Options](https://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Options.html )
  • [g Requête de version standard](https://gcc.gnu.org/onlinedocs/gcc/cpp-options.html#cpp-options_002dM)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal