Même si je suis depuis longtemps programmeur C, je ne ai appris récemment que l'on peut assigner directement les variables de la structure à l'autre au lieu d'utiliser memcpy:Pourquoi puis-je attribuer struct mais pas les comparer
struct MyStruct a,b;
...
a = b; /* implicit memcpy */
Bien que ce se sent un peu "haut niveau" pour C, c'est certainement utile. Mais pourquoi je ne peux pas faire l'égalité et la comparaison des inégalités:
if (a == b) ...
if (a != b) ...
Y at-il une bonne raison de la norme pour exclure ce? Ou s'agit-il d'une incohérence dans la norme - sinon très élégante -?
Je ne vois pas pourquoi je peux remplacer mes memcpy pour des affectations propres, mais je dois garder ces memcmp laids en place.
+1 pour poser une question qui m'a appris quelque chose. –