golang 整型
前言
- 不做文字的搬运工,多做灵感性记录
- 这是平时学习总结的地方,用做知识库
- 平时看到其他文章的相关知识,也会增加到这里
- 随着学习深入,会进行知识拆分和汇总,所以文章会随时更新
- 参考的文章过多、很杂很乱,所以参考会写不全,见谅
整型
- 简单说就是存放整数的
- 整型分为有符号、无符号,int 和 uint 的大小和系统有关
- 默认类型是 int
1.分类
长度 : int - 8,16,32,64
有无符号 : uint int
2.类型
| 类型 | 符号(正负号) | 占用储存空间 | 表数范围 |
|---|---|---|---|
| int8 | 有 | 1字节 | |
| int16 | 有 | 2字节 | |
| int32 | 有 | 4字节 | |
| int64 | 有 | 8字节 | |
| uint8 | 无(从0开始) | 1字节 | |
| uint16 | 无(从0开始) | 2字节 | |
| uint32 | 无(从0开始) | 4字节 | |
| uint64 | 无(从0开始) | 8字节 | |
| uintptr | 无符号整数类型,没有指定具体bit大小,但足以容纳指针 | ||
| rune | |||
| byte | 8bit |
3.类型补充
| 类型 | 有无符号 | 系统 | 所占储存空间 | 表数范围 | 备注 |
|---|---|---|---|---|---|
| int | 有 | 32位系统 | 4个字节 | ||
| 有 | 64位系统 | 8个字节 | |||
| uint | 没有 | 32位系统 | 4个字节 | ||
| 没有 | 64位系统 | 8个字节 | |||
| rune | 有 | 与int32一样 | 等价与int32,便是一个uincode码 | ||
| byte | 没有 | 与int8一样 | 当储存字符时选用byte |
使用细节
uintptr 通常在底层编程时才使用,特别是函数库或操作系统接口相交互的地
Golang程序中整型变量在使用时,遵守保小不保大的原则,
即:在保证程序正确运行下,尽量使用占用空间小的数据类型。
4.补充:
- int类型的处理速度是最快的
- int、uint和uintptr数值大小有可能相等,但是他们是不同的类型。
int和int32也是不同的类型,把int类型当成int32类型使用必须显示的对类型进行转换 - .在二进制传输、读写文件的结构描述时,为保证文件结构不受到不同编译目标平台字节长度的影响,
不要使用int和uint - go中有符号整数采取2的补码的形式表示,也就是最高bit位表示符号位,
- 一个n-bit的
- 有符号数的取值范围是从-2^(n-1)-----2^(n-1)-1
- 无符号整数的所有bit位都用于表示非负数,取值范围是0------2^(n-1)
- 一个n-bit的
跳转
golang 整型的更多相关文章
- golang的数据类型之整型类型
数据类型: 整数 : int, int32, int64, uint, uint32, uint64 字符串 : string 布尔:bool 浮点:float32 float64 uint 表示无符 ...
- Golang的基础数据类型-整型
Golang的基础数据类型-整型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.整型概述 Go语言的整数类型一共有10个. int: 默认是有符号(signed)整形,占用空间 ...
- GOLANG 基本数据类型 整型
基本数据类型-整型 种类 有符号(负号) int8 int16 int32 int64 无符号(无符号) uint8 uint16 uint32 uint64 架构特定(取决于系统位 ...
- 写出将字符串中的数字转换为整型的方法,如:“as31d2v”->312,并写出相应的单元测试,正则去掉非数值、小数点及正负号外的字符串
写出将字符串中的数字转换为整型的方法,如:"as31d2v"->312,并写出相应的单元测试,输入超过int范围时提示不合法输入. public struct Convert ...
- 阿里云提示:对输入参数id未进行正确类型转义,导致整型注入的发生
类似以下提示: XXX.php中,对输入参数id未进行正确类型转义,导致整型注入的发生 解决办法: 找到对应文件:$id = $_GET['id']; 增加以下标红过滤: $id = $_GET['i ...
- 整型信号量和PV操作(计算机操作系统)
在整型信号量机制中,信号量被定义为一个整形变量.除初始化外,仅能通过两个标准的原子操作Wait(S)和Signal(S)来访问.其通常分别被称为P.V操作. 描述如下: P操作:S=S-1:如果S小于 ...
- 面试问题2:给一个5G的大文件,保存的数据为32位的整型,找到所有出现次数超过两次的数字
问题描述:给一个5G的大文件,保存的数据为32位的整型,找到所有出现次数超过两次的数字 大数据操作: 解决方法一: 依次遍历文件数据, 开始32二进制清0 每次读取一个数,先和二进制位与,如果为0 则 ...
- C——整型提升
一.定义 integral promotion: "A character, a short integer, or an integer bit-field, all either sig ...
- python基础知识2——基本的数据类型——整型,长整型,浮点型,字符串
磨人的小妖精们啊!终于可以归置下自己的大脑啦,在这里我要把--整型,长整型,浮点型,字符串,列表,元组,字典,集合,这几个知识点特别多的东西,统一的捯饬捯饬,不然一直脑袋里面乱乱的. 对于Python ...
随机推荐
- Cyber Security - Palo Alto Firewall Objects Addresses, Services, and Groups(1)
Address Objects and Groups Creating address objects. Organizing address objects with address groups ...
- 写给.NET开发者的Python教程(二):基本类型和变量
从本文开始,我们就要正式了解Python的语法特性了,这章主要介绍基本类型和变量,开始之前先介绍下Python中的标准输入输出. 标准输入输出 前文举过TwoSum问题的例子,但是没有讲到标准输入输出 ...
- 贪心法-------Saruman's army
此题的策略是选取可用范围最右边的点,一般来说该点辐射两边,左侧辐射,右侧辐射,所以用两个循环,第一个循环找出该点,第二个循环求出最右边的点 源代码: #include<iostream># ...
- .net 面试题 2020-2-26
2020-2-26 每日几道面试题1. .NET和C#有什么区别答:.NET一般指 .NET FrameWork框架,它是一种平台,一种技术.C#是一种编程语言,可以基于.NET平台的应用. 2.一列 ...
- Python os.lchown() 方法
概述 os.lchown() 方法用于更改文件所有者,类似 chown,但是不追踪链接.高佣联盟 www.cgewang.com 只支持在 Unix 下使用. 语法 lchown()方法语法格式如下: ...
- PHP mkdir() 函数
定义和用法 mkdir() 函数创建目录. 如果成功该函数返回 TRUE,如果失败则返回 FALSE. 语法 mkdir(path,mode,recursive,context) 参数 描述 path ...
- PDO::getAvailableDrivers
PDO::getAvailableDrivers — 返回一个可用驱动的数组(PHP 5 >= 5.1.0, PECL pdo >= 0.1.0) 说明 语法 static array P ...
- setOff与scrollTop区别
1.offsetTop : 当前对象到其上级层顶部的距离. 不能对其进行赋值.设置对象到页面顶部的距离请用style.top属性. 2.offsetLeft : 当前对象到其上级层左边的 ...
- Vue笔记(有点乱)
Vue学习笔记(2019.7.31) 目录 Vue学习笔记(2019.7.31) vue 基本指令用法 v-cloak v-text v-html v-bind v-on 跑马灯 v-on v-mod ...
- electron开发 - mac平台的打包和签名 - 针对electron-builder的自动更新
配合自动更新 - 安装包签名(mac)(待补充) 前提:实现自动更新需要签名 一.本地开发调试mac签名(无需具有权限的appple账号) 打开xcode,xcode -> preference ...