Une brève introduction aux types entiers et aux nombres à virgule flottante dans les types de données PHP

怪我咯
Libérer: 2023-03-13 14:44:02
original
1489 Les gens l'ont consulté

En fait, nous avons écrit des nombres entiers. Nous avons écrit 123, j'ai 12 ans, c'est un nombre entier, ou -123, qui représentent tous des nombres entiers, alors ce que nous écrivons sont tous décimaux, et quelles valeurs numériques peut être écrit ? Vous pouvez écrire des nombres octaux et des nombres hexadécimaux, qui représentent tous des nombres entiers. Ensuite, nous devons également connaître une plage de stockage de type entier.

La plage de stockage des nombres entiers, signée : -2,1 milliards, rappelez-vous juste une plage approximative, entre positif 2,1 milliards -200 millions ~ 2,1 milliards ;

Qu'en est-il du non signé ; c'est-à-dire 0 à 4,2 milliards ; 0 à 4,2 milliards

Type à virgule flottante (également appelé nombre à virgule flottante, nombre à double précision ; double ou nombre réel réel).

Les nombres à virgule flottante ont une précision limitée. Bien que cela dépende du système, PHP utilise généralement le double format IEEE 754, donc l'erreur relative maximale due à l'arrondi est de 1.11e-16. Les opérations mathématiques non fondamentales peuvent donner lieu à des erreurs plus importantes, et la propagation des erreurs lors de l'exécution d'opérations composées doit être prise en compte.

De plus, les nombres rationnels tels que 0,1 ou 0,7 qui peuvent être représentés avec précision en décimal, quel que soit le nombre de mantisses, ne peuvent pas être représentés avec précision par le binaire utilisé en interne et ne peuvent donc pas être convertis en binaire sans perdre un peu de précision. Cela peut conduire à des résultats confus : par exemple, floor((0.1+0.7)*10) renverra généralement 7 au lieu du 8 attendu car la représentation interne du résultat est en fait quelque chose comme 7.999999999999999991118... .

Ne croyez donc jamais qu'un résultat de nombre à virgule flottante est précis jusqu'au dernier chiffre, et ne comparez jamais deux nombres à virgule flottante pour voir s'ils sont égaux.

Cet article présente le type de données PHP , le type entier et l'introduction des nombres à virgule flottante. Les amis dans le besoin peuvent se référer à

Syntaxe : Les valeurs entières peuvent être exprimées en décimal, hexadécimal ou octal, et peuvent être précédées d'un symbole facultatif (- ou +). Octal représente un nombre qui doit être précédé de 0 (zéro) et hexadécimal représente un nombre qui doit être précédé de 0x.

$int1=100; //Décimal
$int2=-123; //Nombre négatif
$int3=0123; //Nombre octal
$int4=0x1A;//Seize Numéro de base

echo PHP_INT_SIZE //Affiche un entier représenté par plusieurs octets
echo "
";
echo PHP_INT_MAX;echo "
";//Le nombre maximum d'entiers (2147483647)
$fmax=2147483648;
var_dump(PHP_INT_MAX); au-delà de la plage de entier sera interprété comme un type float. echo "
";
var_dump($fmax);

Nombre à virgule flottante : Nombre à virgule flottante (nombre double ou réel) $a=1.34;
$b=1.8e308;
$c=8e-10;
var_dump($b);
//La longueur des mots des nombres à virgule flottante est la plate-forme -dépendant, bien que la valeur maximale soit généralement de 1,8e308 et ait une précision de 14 chiffres décimaux (ne peut pas dépasser 14 chiffres)
//
La précision est calculée à partir du premier chiffre non 0 en partant de la gauche.

Par exemple : $a=567.9999899 //Sortie 567.9999899

$b=789.8812345678543 //Sortie 789.88123456785

$c=0.000000008907 777777 //Sortie 0.000000008907777777

Compréhension importante : précision Calculer à partir du

premier nombre non nul en partant de la gauche.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal