std::endian
Depuis fr.cppreference.net
| Défini dans l'en-tête <bit>
|
||
enum class endian
{
little = /* implementation-defined */,
big = /* implementation-defined */,
native = /* implementation-defined */,
};
|
(depuis C++20) | |
Indique le boutisme de tous les types scalaires :
- Si tous les types scalaires sont en petit-boutiste,
std::endian::nativevautstd::endian::little. - Si tous les types scalaires sont en gros-boutiste,
std::endian::nativevautstd::endian::big.
Les plateformes aux cas particuliers sont également prises en charge :
- Si tous les types scalaires ont
sizeofégal à1, le boutisme n'a pas d'importance et les trois valeurs,std::endian::little,std::endian::big, etstd::endian::nativesont identiques. - Si la plateforme utilise un boutisme mixte,
std::endian::nativen'est égal ni àstd::endian::bigni àstd::endian::little.
Implémentation possible
enum class endian { #if defined(_MSC_VER) && !defined(__clang__) little = 0, big = 1, native = little #else little = __ORDER_LITTLE_ENDIAN__, big = __ORDER_BIG_ENDIAN__, native = __BYTE_ORDER__ #endif };
Notes
| Macro de test de fonctionnalité | Valeur | Std | Fonctionnalité |
|---|---|---|---|
__cpp_lib_endian
|
201907L
|
(C++20) | std :: endian |
Exemple
Exécuter ce code
Sortie possible :
mixed-endian
Voir aussi
|
(C++23)
|
inverse l'ordre des octets dans la valeur entière donnée
(modèle de fonction) |
|
Documentation C
pour
endian
|
|