首页 > 编程知识 正文

引用类型与指针类型有什么区别,golang类型转换

时间:2023-05-03 23:09:11 阅读:162654 作者:2319

指针类型

可以对此指针类型的数据进行修改。 传递的数据可以直接使用指针,而无需复制数据。 类型指针不能进行偏移或运算。

//基本数据类型的存储器内的布局var i int=100//i的地址是什么? fmt.println(I的地址为(,I ) /指针//ptr为指针变量类型(int本身的值为I(I在内存中的地址) ) /指针不能为值。 指针接收地址varptr*int=I//varptr*int=I() fmt.printf(ptr的值为%v(n ),ptr )/ptr的地址fmt.printf ) ptr的地址

值类型:具有*数据类型的指针类型

例如,与int对应的指针类型是* int

值类型包括基本数据类型、数组和结构结构结构

引用类型:指针、slice切片、map、管道chan和接口

值类型和引用类型的使用特性:

**值类型:**变量直接存储值,内存通常分配给堆栈

**引用类型:**变量包含地址。 地址对应的区域才是真正存储数据的地方。 通常被分配给堆。 如果没有参照该地址的变量,则与该地址对应的数据区域将成为垃圾,由GC回收。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。