Pourquoi penses-tu la promotion de short -> int est un chemin tortueux ?
-- The rank [...]
Pourquoi penses-tu la promotion de short -> int est un chemin tortueux ?
-- The rank [...]
Pourquoi penses-tu la promotion de short -> int est un chemin tortueux ?
-- The rank [...]
Gabriel Dos Reis scripsit:Pourquoi penses-tu la promotion de short -> int est un chemin tortueux ?
Je crois que candide pense que ce qui est tortueux, c'est l'éventuel
chemin logique menant des règles de promotion à des conclusions sur
sizeof.
-- The rank [...]
On est bien d'accord que le rang (rank) de int est supérieur ou égal à
celui de short.
La question est de savoir pourquoi ça impliquerait que
sizeof int soit supérieur ou égal à sizeof short.
Si un passage de la norme dit en gros que les compilos doivent être
cohérents dans leur choix de padding, alors c'est bon. Sinon, un compilo
pervers pourrait choisir d'utiliser un padding gigantesque sur les
short et pas de padding sur les int, ce qui donnerait sizeof short >
sizeof int.
Gabriel Dos Reis scripsit:
Pourquoi penses-tu la promotion de short -> int est un chemin tortueux ?
Je crois que candide pense que ce qui est tortueux, c'est l'éventuel
chemin logique menant des règles de promotion à des conclusions sur
sizeof.
-- The rank [...]
On est bien d'accord que le rang (rank) de int est supérieur ou égal à
celui de short.
La question est de savoir pourquoi ça impliquerait que
sizeof int soit supérieur ou égal à sizeof short.
Si un passage de la norme dit en gros que les compilos doivent être
cohérents dans leur choix de padding, alors c'est bon. Sinon, un compilo
pervers pourrait choisir d'utiliser un padding gigantesque sur les
short et pas de padding sur les int, ce qui donnerait sizeof short >
sizeof int.
Gabriel Dos Reis scripsit:Pourquoi penses-tu la promotion de short -> int est un chemin tortueux ?
Je crois que candide pense que ce qui est tortueux, c'est l'éventuel
chemin logique menant des règles de promotion à des conclusions sur
sizeof.
-- The rank [...]
On est bien d'accord que le rang (rank) de int est supérieur ou égal à
celui de short.
La question est de savoir pourquoi ça impliquerait que
sizeof int soit supérieur ou égal à sizeof short.
Si un passage de la norme dit en gros que les compilos doivent être
cohérents dans leur choix de padding, alors c'est bon. Sinon, un compilo
pervers pourrait choisir d'utiliser un padding gigantesque sur les
short et pas de padding sur les int, ce qui donnerait sizeof short >
sizeof int.
Bonjour,
J'ai lu ici même que : sizeof (short) <= sizeof (int) et de même que
sizeof (int) < sizeof (long).
J'ai beau lire et relire la Norme, je ne vois pas où cela est garanti.
Quelqu'un peut-il préciser ? Merci
Bonjour,
J'ai lu ici même que : sizeof (short) <= sizeof (int) et de même que
sizeof (int) < sizeof (long).
J'ai beau lire et relire la Norme, je ne vois pas où cela est garanti.
Quelqu'un peut-il préciser ? Merci
Bonjour,
J'ai lu ici même que : sizeof (short) <= sizeof (int) et de même que
sizeof (int) < sizeof (long).
J'ai beau lire et relire la Norme, je ne vois pas où cela est garanti.
Quelqu'un peut-il préciser ? Merci
On a déjà expliqué 3zillions de fois que les types étaient défi nis par
leur plages et non par leur tailles...
La définition du langage C établit les relations suivantes :
sizeof (char) <= sizeof (short) <= sizeof (int) <= sizeof (long)
La relation dont tu parles
n'est pas dans la norme. C'est une déduction plus ou moins fumeuse
(probablement issue du Rationale)...
On a déjà expliqué 3zillions de fois que les types étaient défi nis par
leur plages et non par leur tailles...
La définition du langage C établit les relations suivantes :
sizeof (char) <= sizeof (short) <= sizeof (int) <= sizeof (long)
La relation dont tu parles
n'est pas dans la norme. C'est une déduction plus ou moins fumeuse
(probablement issue du Rationale)...
On a déjà expliqué 3zillions de fois que les types étaient défi nis par
leur plages et non par leur tailles...
La définition du langage C établit les relations suivantes :
sizeof (char) <= sizeof (short) <= sizeof (int) <= sizeof (long)
La relation dont tu parles
n'est pas dans la norme. C'est une déduction plus ou moins fumeuse
(probablement issue du Rationale)...
(char) <= sizeof(int), à ton avis, je faisais allusion à qui ? Je t e
cite le 1er février 2003 :
> La définition du langage C établit les relations suivantes :
> sizeof (char) <= sizeof (short) <= sizeof (int) <= sizeof (long)
(char) <= sizeof(int), à ton avis, je faisais allusion à qui ? Je t e
cite le 1er février 2003 :
> La définition du langage C établit les relations suivantes :
> sizeof (char) <= sizeof (short) <= sizeof (int) <= sizeof (long)
(char) <= sizeof(int), à ton avis, je faisais allusion à qui ? Je t e
cite le 1er février 2003 :
> La définition du langage C établit les relations suivantes :
> sizeof (char) <= sizeof (short) <= sizeof (int) <= sizeof (long)
2003 ? Oui, c'est possible.
On a déjà expliqué 3zillions de fois que les types étaient défi nis par
leur plages et non par leur tailles...
Je dois aussi citer tes erreurs passées ?
Ce qui compte, ce n'est pas l'historique,
mais l'état des lieux tel
qu'il est affirmé à ce jour, c'est à dire, par exemple, sur mon
site ...
2003 ? Oui, c'est possible.
On a déjà expliqué 3zillions de fois que les types étaient défi nis par
leur plages et non par leur tailles...
Je dois aussi citer tes erreurs passées ?
Ce qui compte, ce n'est pas l'historique,
mais l'état des lieux tel
qu'il est affirmé à ce jour, c'est à dire, par exemple, sur mon
site ...
2003 ? Oui, c'est possible.
On a déjà expliqué 3zillions de fois que les types étaient défi nis par
leur plages et non par leur tailles...
Je dois aussi citer tes erreurs passées ?
Ce qui compte, ce n'est pas l'historique,
mais l'état des lieux tel
qu'il est affirmé à ce jour, c'est à dire, par exemple, sur mon
site ...