Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation avec
Le langage C
Voir le programme détaillé

Macros __alignas_is_defined et __alignof_is_defined (C11)

La macro alignof La librairie stdarg.h


Entête à inclure

#include <stdalign.h>  // <cstdalign> en C++

Macros de détection

Nom Valeur Description
__alignas_is_defined 1 Indique que le nom alignas est défini par <stdalign.h>.
__alignof_is_defined 1 Indique que le nom alignof est défini par <stdalign.h>.

Ces deux macros sont prévues pour être utilisées dans des directives du préprocesseur. Elles évitent de tester indirectement le comportement d'une implémentation.

Exemple de code

L'exemple suivant vérifie la présence des deux noms avant d'afficher un message.

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
#include <stdalign.h>
#include <stdio.h>
#include <stdlib.h>

int main() {

#if defined( __alignas_is_defined ) && __alignas_is_defined
    puts( "alignas est disponible." );
#endif

#if defined( __alignof_is_defined ) && __alignof_is_defined
    puts( "alignof est disponible." );
#endif

    return EXIT_SUCCESS;
}
Tester les macros de détection

Cet exemple produit l'affichage suivant.

alignas est disponible.
alignof est disponible.

Sujets connexes

alignas
alignof
La librairie <stdalign.h>


La macro alignof La librairie stdarg.h




Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation avec
Le langage C
Voir le programme détaillé