Beaucoup de nouveaux noms de type de données ++ C ont un seul nom de mot, par exemple:A "long double" un seul nom de mot?
- int16_t au lieu de signer short int
- int64_t au lieu de signer long int
- ...
A "long double" un nom de mot unique?
Beaucoup de nouveaux noms de type de données ++ C ont un seul nom de mot, par exemple:A "long double" un seul nom de mot?
A "long double" un nom de mot unique?
Non, int16_t
ne signifie pas toujours short
etc. int16_t
etc sont des types entiers de taille spécifiée, alors que la taille de short
etc est non spécifiée. Vous n'avez pas besoin de telles choses pour les types à virgule flottante, car leurs tailles sont spécifiées.
Etes-vous sûr que les tailles de tous les types à virgule flottante sont spécifiées par la norme et ne sont pas spécifiques à la plate-forme? –
Eh bien, je suppose que C++ 98 nécessite IEEE754. Malheureusement, ce n'est pas le cas. – wRAR
Donc, les tailles ne sont pas fixes? :) –
Je ne crois que oui, mais vous pouvez tout simplement faire vos propres
#define double64_t (long double)
typedef long double double64_t;
Bien sûr, mais c'est trompeur si long double n'est pas 64 bits. –
Ce ne sont pas des noms longs/courts. "Noms" comme long int
, short int
, etc sont d'habitude, MAIS spécifique à la plate-forme et faire pas ont une taille fixe. Par exemple, long int
pourrait être 4B ou 8B.
Alors que les noms comme intXX_t
est le type entier avec taille fixe garanti - XX
les bits.
Et non, il y a une telle chose dans la norme C++ pour double
.
Pour plus d'informations sur la taille fixe types à virgule flottante: Fixed-size floating point types
lol, downvote pour? –
Je ne pense pas. int16_t et d'autres sont définis dans stdint.h. Rien de tel n'existe pour float/double. BTW, long est un modificateur de type et double est un type de données.
En C++, vous pouvez définir votre propre classe double et la rendre utilisable en surchargeant les opérateurs.
Shash
double possible de [taille fixe flottante types de points] (http://stackoverflow.com/questions/2524737/fixed-size-floating-point-types) – stakx
Il est reproduit pas exactement, comme @ Armin ne savait pas ce que sont exactement 'intXX_t'. –
Cela n'aurait aucun sens d'avoir un "type à virgule flottante de 64 bits" de toute façon. Vous auriez besoin d'un type «mantisse 48 bits, 1 bit, exposant 15 bits» pour être entièrement portable. Contrairement aux entiers, les types à virgule flottante ont une structure interne. – MSalters