Partager via


Avertissement du compilateur (niveau 4) C4254

'opérateur' : conversion de 'type1' en 'type2', perte possible de données

Un champ de bits a été assigné à un champ de bits plus petit. Une perte de données est possible.

Cet avertissement est désactivé par défaut. Pour plus d'informations, consultez Avertissements du compilateur désactivés par défaut.

L'exemple suivant génère l'erreur C4254 :

// C4254.cpp
// compile with: /W4
#pragma warning(default: 4254)

struct X {
   int a : 20;
   int b : 12;
};

int main() {
   X *x = new X();
   x->b = 10;
   x->a = 4;
   x->a = x->b;    // OK
   x->b = x->a;    // C4254
};