php int类型思索
原文地址
起因
业务涉及了一组大整数的累加和,每个整数大约9位数,每组有几百个数字,担心数字溢出,所以了解下php int类型的范围。
测试
根据php官方文档,我的机器是64位,所以int范围应该是在(-263 -1 ) 到 (263 - 1)
整型数的字长和平台有关,尽管通常最大值是大约二十亿(32 位有符号)。64 位平台下的最大值通常是大约 9E18,除了 Windows 下 PHP 7 以前的版本,总是 32 位的。
所以我做了如下测试
$num = pow(2, 63) - 1;
var_dump($num); exit;
输出
double(9.2233720368548E+18)
奇怪,结果竟然是浮点数,这个明显是php解析器发现数据溢出后自动使用了double类型。
仔细思考原因如下:
263本身已经超过了int的表示范围,php将其解释为double,之后再如何运算的结果都是double
所以我修改了下代码
$nums = pow(2, 62) - 1 + pow(2, 62);
var_dump($num); exit;
输出
int(9223372036854775807)
到此,证实了php int类型最大值为263 - 1。
php int类型思索相关推荐
- python 把int类型转bytes以及把bytes 转int 类型(使用方法to_bytes ,from_byte, struct)
把int类型转bytes 方法1 使用方法to_bytes to_bytes 方法里面有3个参数 , 第一个数是指定要转换的bytes占多少个字节 第二个是byteorder 是指定大端或者是小端 的 ...
- getchar返回int类型
#include <stdio.h> /* copy input to output; 2nd version */ main() { int c; c = getchar(); whil ...
- mysql int和bigdecimal,mysql的 int 类型,刨析返回类型为BigDicemal 类型的奇怪现象
用的是Map,List>接收, sql语句中int类型的值做了聚合运算, 满足上述两个条件. java中去取value的值就会变成BigDecimal 类型 经过实测:mybatis 中的sql ...
- mysql timestamp json_mysql中timestamp,datetime,int类型的区别与优劣
mysql中timestamp,datetime,int类型的区别与优劣 int 1. 占用4个字节 2. 建立索引之后,查询速度快 3. 条件范围搜索可以使用使用between 4. 不能使用mys ...
- 实验五:任意输入10个int类型数据,排序输出,再找出素数
一.实验代码如下: 1 /*本程序用来任意输入10个int类型数据,排序输出,再找出素数*/ 2 3 package jiangli; 4 5 import java.util.Scanner; 6 ...
- x86的cpu处理int类型并不是处理char高效多少
很多文章上说int类型是最高效的类型,cpu处理这种类型要比其它类型快,比如要比处理char类型快,原因是什么,原因就是他们学过一本国人的教科书,教科书上就这么写的,所以人们就记住了,然而事实为何如此 ...
- JAVA里面的int类型 和Integer类型,有什么不一样
JAVA里面的int类型 和Integer类型,有什么不一样 原创 2013年09月04日 23:15:11 标签: java / 2120 编辑 删除 JAVA里面的int类型 和Integer类型 ...
- request获取int类型的值_获取通话记录或通讯录的数量为负值
安卓源码避坑指南5--获取通话记录或通讯录的数量为负值 通过蓝牙PBAP协议同步通讯录.通话记录时,想必对其数量大小也是很感兴趣的,因此一般的设计思路都是先获取到同步对象的总大小,然后再同步该对象的具 ...
- char 转为 int 类型
一字符串,String="1234567": 把第i个数取出来时是char型的 如何把char型转换成int型? 先将char转为string类型,再转为int类型 public ...
最新文章
- 部署通用基础设施, 满足顶级 SLA 要求
- JqueryAjax异步加载在ASP.NET
- SQL Server 安装好后 Always On群组配置
- java object 引用类型_java中的四种引用类型
- Delphi控件开发浅入深出(三)
- servlet-api-2.5.jar - jar not loaded
- C++动态内存会被自动释放吗?
- 【ENVI解决经验】一处理图像就报错
- adb命令logcat抓取日志
- ibm服务器安装ghostxp系统,IBM ThinkPad X61s安装WIN XP系统
- 你理解大话西游片尾那句“他好像一条狗”吗?
- Cadence PSpice 仿真3: 电容器充放电瞬态仿真图文教程
- Codeforces Round #322 A Vasya the Hipster
- 前序、中序、后序表达式
- keyberos认证问题导致GSS initiate failed
- 《活出最乐观的自己》
- Simlink数字电路仿真教程(1)——常用电路仿真元器件介绍
- 本征向量、PCA和熵的基础教程
- 微信小程序开发者工具中版本管理的实现一(微信小程序tgit)
- 2022年TI杯模拟电⼦系统设计专题邀请赛——李萨如图形演示装置