Meilleure réponse
Différence B / w Int court et long
Eh bien, la différence est très petite mais peut être très importante dans certains cas. Lors de la programmation, le deuxième objectif le plus important (après que le programme fasse ce quil est censé faire) est déconomiser de la mémoire pour que le programme sexécute aussi vite que possible. Cest là que votre mot-clé « long » entre en jeu. Long est un entier mais entier nest pas exactement un long comprendre? Il y a aussi un « short ». Désormais, ils sont généralement référencés avec int après eux mais ce nest pas obligatoire. Le principal la différence entre eux est leur taille. En fonction de lordinateur, mais dans la plupart des cas, un « court » fait deux octets, un « long » fait quatre octets et un « int » peut faire deux ou quatre octets. Il est important dans les programmes que vous le déclariez court ou long si vous savez exactement quelle sera la taille du nombre et à quelle fréquence il sera modifié pour que vous puissiez économiser autant de mémoire que possible. Maintenant, en ce qui concerne la plage qui dépend de la taille de lint, si elle est de deux ou quatre octets. Voici un tableau pour référencer les tailles et les valeurs.
plage de tailles de type
int court 2 octets -32 768 à 32 767
int long 4 octets -2 147 483 648 à 2 147 483 647
int (16 bits) 2 octets -32 768 à 32 767
int (32 bits) 4 octets -2147 , 483 648 à 2 147 483 647
Différence B / w Float et Double
Nombres à virgule flottante, également appelés réels nombres, sont utilisés lors de lévaluation dexpressions nécessitant une précision fractionnaire. Par exemple, les calculs tels que la racine carrée, ou transcendantaux tels que le sinus et le cosinus, donnent une valeur dont la précision nécessite un type à virgule flottante. Java implémente lensemble standard (IEEE-754) de types et dopérateurs à virgule flottante. Il existe deux types de types à virgule flottante, float et double, qui représentent respectivement des nombres simple et double précision. Leur largeur et leurs plages sont indiquées ici:
Largeur du nom en bits de plage
double 64 1 .7e – 308 à 1.7e + 308
float 32 3 .4e – 038 à 3.4e + 038
Chacun de ces Les types à virgule flottante sont ensuite examinés.
float
Le type float spécifie une valeur simple précision qui utilise 32 bits de stockage. La simple précision est plus rapide sur certains processeurs et prend deux fois moins despace que la double précision, mais elle deviendra imprécise lorsque les valeurs sont très grandes ou très petites. Les variables de type float sont utiles lorsque vous avez besoin dun composant fractionnaire, mais ne nécessitent pas un grand degré de précision. Par exemple, float peut être utile pour représenter des dollars et des cents.
Voici quelques exemples de variable float déclarations:
float hightemp, lowtemp;
double
La double précision, indiquée par le mot-clé double, utilise 64 bits pour stocker une valeur. La double précision est en fait plus rapide que la simple précision sur certains processeurs modernes qui ont été optimisés pour les mathématiques à grande vitesse calculs. Toutes les fonctions mathématiques transcendantales, telles que sin (), cos () et sqrt (), renvoient des valeurs doubles. Lorsque vous avez besoin de maintenir la précision sur de nombreux calculs itératifs ou que vous manipulez des nombres à grandes valeurs, double est le meilleur choix .
Voici un petit programme qui utilise des variables doubles pour calculer laire dun cercle:
// Calculer e Laire dun cercle.
class Area {
public static void main (String args []) {
double pi, r, a;
r = 10,8; // rayon du cercle
pi = 3.1416; // pi, environ
a = pi * r * r; // calculer la zone
System.out.println (« Laire du cercle est » + a);
}
}
Réponse
Comme dhabitude, cela dépend . Les tailles exactes des courts et des longs sont laissées à limplémenteur du compilateur, qui sélectionnera les représentations qui correspondent le mieux à larchitecture cible. Il est possible (mais peu probable) que sizeof(short) == sizeof(int) == sizeof(long)
, ce qui signifie quils sont tous identiques. La seule garantie que vous avez est que la taille dun short est inférieure ou égale à la taille dun long. Pour les tailles exactes, utilisez len-tête
; ou pour faire abstraction des détails laids, utilisez le std::numeric\_limits
modèle de
.
Un raisonnement similaire sapplique au float et double, mais ici, il est plus probable que float
représente un nombre à virgule flottante simple précision (4 octets) et double
un nombre à virgule flottante double précision (8 octets).Trop de logiciels ont été écrits qui supposent IEEE 754, donc les rédacteurs de compilateurs sont moins susceptibles de sécarter des règles.