当前位置: 首页 > news >正文

单位建设网站申请湘潭电大网站

单位建设网站申请,湘潭电大网站,查注册公司什么网站,高端手机Go语言数据类型实例讲解 - Go语言从入门到实战 基础数据类型 bool string int int8 int16 int32 int64 uint uint8 uint16 uint32 uint64 uintptr byte rune float32 float64 complex64 complex128类型描述bool布尔型(bool):可以是true或f…

Go语言数据类型实例讲解 - Go语言从入门到实战

基础数据类型

bool
string	
int int8 int16 int32 int64
uint uint8 uint16 uint32 uint64 uintptr
byte
rune
float32 float64
complex64 complex128
类型描述
bool布尔型(bool):可以是true或false。
string字符串类型:表示文本数据。
int整型:根据平台不同,可以是32位或64位。
int88位整型:取值范围为-128到127。
int1616位整型:取值范围为-32768到32767。
int3232位整型:取值范围为-2147483648到2147483647。
int6464位整型:取值范围为-9223372036854775808到9223372036854775807。
uint无符号整型:根据平台不同,可以是32位或64位。
uint88位无符号整型:取值范围为0到255。
uint1616位无符号整型:取值范围为0到65535。
uint3232位无符号整型:取值范围为0到4294967295。
uint6464位无符号整型:取值范围为0到18446744073709551615。
uintptr用于保存指针的无符号整型。
byteuint8的别名。
runeint32的别名,代表一个Unicode编码点。
float3232位浮点数类型。
float6464位浮点数类型。
complex6464位复数类型,由两个32位浮点数表示实部和虚部。
complex128128位复数类型,由两个64位浮点数表示实部和虚部。

类型转换

与其他主要编程语言的差异

  1. Go语言不允许隐式类型转换
  2. 别名和原有类型也不能进行隐式类型转换
package main  import "testing"  func TestType(t *testing.T) {  var a int = 1  var b int64 = 2  // 这行代码会编译错误,因为无法完成从int到int64的隐式转换, 不允许将一个int类型的变量a赋值给int64类型的变量b。必须显式地将a转换为int64类型,才能赋值给b。// b = a  // 必须显式转换类型  b = int64(a)  t.Log(a, b)  
}

类型的预定义值

  1. math.MaxInt64:这是int64类型的最大值,即9223372036854775807。
  2. math.MaxFloat64:这是float64类型的最大值,即1.8e308。
  3. math.MaxUint32:这是uint32类型的最大值,即4294967295。

这些值是在math包中定义的,它们可以用于比较和限制数值的范围,以防止溢出或下溢。

指针类型

Go语言指针主要包含两个重要概念:指针和切片

  1. 指针:
    • 指针是Go语言中的一种特殊数据类型,它存储了一个变量的内存地址。通过使用指针,可以直接访问指向的内存地址上的值。
    • 传递指针可以避免数据拷贝,提高性能。当传递大型数据结构时,使用指针可以避免将数据整体复制到函数栈上,而是直接操作原始数据。
    • 可以使用指针来修改所指向的值。通过指针访问并修改内存地址上的值,会影响到原始变量的值。
    • 类型指针是指向特定类型变量的指针。类型指针不能进行算术运算或偏移操作,只能与nil进行比较。
  2. 切片:
    • 切片是对数组的一个引用,它包含了指向数组起始元素的指针、切片长度和切片容量。切片长度是切片中元素的数量,切片容量是从起始元素到底层数组的最后一个元素的数量。
    • 切片比使用原始指针更安全,因为它具有内置的长度和容量检查。当尝试访问超出切片长度的索引时,Go语言会抛出运行时错误(panic),并显示堆栈信息,有助于调试。而使用原始指针时,越界访问可能导致程序崩溃,导致不会提供详细的错误信息。
    • 切片是动态长度的,可以根据需要增长或缩小。这使得切片非常适合用于处理可变长度的数据序列。

与其他主要编程语言的差异

  1. 不支持指针运算,不能通过增加或减少指针的值来访问内存中的其他位置。
  2. string是值类型,其默认的初始化值为空字符串,而不是nil。在Go语言中,字符串是一种值类型,当创建一个字符串变量时,它会在内存中有一个具体的值。
package type_testimport "testing"type MyInt int64func TestPoint(t *testing.T) {a := 1aPtr := &a	//创建了一个指向a的指针aPtr//aPtr = aPtr + 1t.Log(a, aPtr)t.Logf("%T %T", a, aPtr)	//打印它们的类型
}func TestString(t *testing.T) {var s stringt.Log("*" + s + "*") //初始化零值是“”t.Log(len(s))	//s的值为默认的空字符串。打印s的长度,应为0。}

学习Go语言主要是多练,多找些代码段写写,不懂可以私聊咨询。

欢迎关注云尔Websites CSDN博客

欢迎进入Golang交流社区

http://www.yayakq.cn/news/700265/

相关文章:

  • 网站开发的报告书石家庄网站模板建站
  • 江苏省建设厅网站证件查询沙田镇网站仿做
  • 国内如何做国外网站的兼职项目怎样优化自己的网站
  • 自己做网站用什么软件广西南宁网络营销网站
  • 爱空间网站模板php做大型网站
  • 网站开发公司市场做网站找那些公司
  • 整站优化网站报价seo服务套餐
  • 申请网站免费枫林seo
  • 怎么做网站信息自己做第一个网站
  • 深圳网站建设力荐上榜网络免费电子公章印章在线制作
  • 携程电子商务网站建设美创网站建设优势
  • 做网站整理信息的表格网页设计与制作课程实施报告
  • 公众号制作模板网站建筑网络学院
  • 北京市网站维护公司首页风格
  • 网站开发语言php视频号运营基础课程
  • 社交网站 源码昆山建设信息网站
  • 房产中介网站建设技巧海口新闻最新消息
  • 福州软件网站开发培训班66郑州网站建设
  • 沈阳关键词网站排名哪个公司网站备案快
  • 杭州公司建设网站网站qq联系怎么做
  • dede音乐网站源码没有网站百度推广吗
  • 网站怎么收费的企业品牌网站建设方案
  • 99元一月做网站电子商务平台及核心技术
  • 支付宝网站支付接口网站开发方式的选择
  • 手机站模板宁波网站建设信任荣盛网络
  • 邢台建网站公司宁波专业网站建设模板服务
  • wordpress打字不显示图片东莞短视频seo需要多少钱
  • 网站开发区网站建设 中企动力宜昌
  • django网站开发实例源码服务器安全狗
  • 为什么国外网站有时打不开怎么搭建自己的网站卖货