• Go语言学习笔记九: 指针


    Go语言学习笔记九: 指针

    指针的概念是当时学C语言时了解的。Go语言的指针感觉与C语言的没啥不同。

    指针定义与使用

    指针变量是保存内存地址的变量。其他变量保存的是数值,而指针变量保存的是内存地址。这个内存地址可能保存者一个基本数值。
    指针变量也是有类型的。它需要知道自己保存的内存地址指向数值的类型,因为不同的数值类型占用的空间大小是不同的。

    在指针中有两个重要的符号需要了解: &和。 其中&是用于获取普通变量的地址,而是获取内存地址指向的数值。看起来就是一对反向操作。
    另外在声明指针时也要用到,所以在变量声明的时候只是定义指针变量,并不是获取内存地址指向的数值。

    package main
    
    import "fmt"
    
    func main() {
    	var ptr1 *int
    	var ptr2 *float32
    
    	var a int = 10
    
    	ptr1 = &a;
    
    	fmt.Printf("a变量的地址: %x
    ", &a); 
    
    	fmt.Printf("ptr1变量保存的地址: %x
    ", ptr1);
    
    	fmt.Printf("ptr1变量地址指向的值: %d
    ", *ptr1)
    	
    	fmt.Printf("ptr2变量的值: %x
    ", ptr2)
    }
    

    空指针

    当一个指针被定义后,没有赋值时,它的值为nil。

    nil指针被称为空指针。

    空指针的判断

    if (ptr != nil)
    if (ptr == nil)
    
  • 相关阅读:
    鲸云效总结自动化测试常见问题
    鲸云效解析自动化测试前期的准备很重要
    鲸云效为小程序上线做兼容性审核
    ADO.NET删除和修改
    GIT常用操作命令
    随笔
    你应该知道的计算机延迟数字
    centos安装dotnet-sdk-3.1出现no package问题
    Linux CentOS7.9安装Docker
    CentOS6.8配置IP
  • 原文地址:https://www.cnblogs.com/zhangqunshi/p/8473285.html
Copyright © 2020-2023  润新知