zoukankan      html  css  js  c++  java
  • 深入理解Go系列一之指针变量

    指针变量

    1. 基本概念

      • &a,代表 a 变量的内存地址
      • p,代表一个句柄引用(句柄由实例数据指针与实例类型指针两部分组成) ,句柄的好处是,当实例数据值改变时,不需要改动实例数据指针与实例类型指针的引用
      • *p,代表句柄引用中,指向实例数据的指针(引用)
      • *type,代表实例类型指针,一般声明一个指针变量后就不会改动类型
    2. 指针内存布局分析

    3. 代码示例

    package main
    
    import "fmt"
    
    func main() {
    	/*[01] 指针地址声明;
    	  并将a变量内存地址作为p 句柄引用 */
    	var a = 100
    	var p *int = &a
    	fmt.Println(a) //100
    	fmt.Println(p) //0xc000126010
    
    	/*[02] 更改指针实例数据的值
    	  句柄引用不变*/
    	*p = 200
    	fmt.Println(a) //200
    	fmt.Println(p) //0xc000126010
    
    	/*[03] 实例数据赋值给新变量b;
    	  实例数据指针赋值给新变量c;*/
    	b := a
    	c := *p
    	fmt.Println(p)  //0xc000126010
    	fmt.Println(&b) //0xc000126030
    	fmt.Println(&c) //0xc000126038
    
    }
  • 相关阅读:
    HDFS 2.X新特性
    kettle的系列教程
    Kettle基本使用
    MySQL流程控制结构
    MySQL函数
    MySQL存储过程和函数
    MySQL变量
    MySQL视图
    TCL(事务控制语言)
    MySQL标识列(自增长列)
  • 原文地址:https://www.cnblogs.com/luckyCoder/p/13643269.html
Copyright © 2011-2022 走看看