Go 语言变量
优质
小牛编辑
151浏览
2023-12-01
Go 语言中变量的概念和 C 语言中也一样,所以我们直接来看下如何定义和使用变量即可,C 语言中定义变量的格式:
数据类型 变量名称;
数据类型 变量名称1, 变量名称2;
#include <stdio.h> int main(int argc, const char * argv[]) { int num1; // 先定义 num1 = 10; // 后初始化 printf("num1 = %d\n", num1); int num2 = 20; // 定义的同时初始化 printf("num2 = %d\n", num2); // 注意: 同时定义多个变量,不支持定义时初始化, 只能先定义后初始化 int num3, num4; //同时定义多个变量 num3 = 30; num4 = 40; printf("num3 = %d\n", num3); printf("num4 = %d\n", num4); return 0; }
Go 语言中定义变量有三种格式
// 标准格式 var 变量名称 数据类型 = 值; // 自动推到类型格式 var 变量名称 = 值; // 简短格式(golang官方推荐格式) 变量名称 := 值;
package main import "fmt" func main() { var num1 int // 先定义 num1 = 10 // 后赋值 fmt.Println("num1 = ", num1) var num2 int = 20 // 定义的同时赋值 fmt.Println("num2 = ", num2) var num3 = 30 // 定义的同时赋值, 并省略数据类型 fmt.Println("num3 = ", num3) num4 := 40 // 定义的同时赋值, 并省略关键字和数据类型 /* num4 := 40 等价于 var num4 int num4 = 40 */ fmt.Println("num4 = ", num4) }
和C语言一样,除了可以定义单个变量以外,还支持一次性定义多个变量
方式一,连续定义
package main import "fmt" func main() { var num1, num2 int // 先定义 num1 = 10 // 后赋值 num2 = 20 fmt.Println("num1 = ", num1) fmt.Println("num2 = ", num2) var num3, num4 int = 30, 40 // 定义的同时赋值 fmt.Println("num3 = ", num3) fmt.Println("num4 = ", num4) var num5, num6 = 50, 60 // 定义的同时赋值, 并省略数据类型 fmt.Println("num5 = ", num5) fmt.Println("num6 = ", num6) num7, num8 := 70, 80 // 定义的同时赋值, 并省略关键字和数据类型 fmt.Println("num7 = ", num7) fmt.Println("num8 = ", num8) }
方式二,变量组
package main import "fmt" func main() { var( // 先定义 num1 int num2 float32 ) num1 = 10 // 后赋值 num2 = 3.14 fmt.Println("num1 = ", num1) fmt.Println("num2 = ", num2) var( // 定义的同时赋值 num3 int = 30 num4 float32 = 6.66 ) fmt.Println("num3 = ", num3) fmt.Println("num4 = ", num4) var( // 定义的同时赋值, 并省略数据类型 num5 = 50 num6 = 7.77 ) fmt.Println("num5 = ", num5) fmt.Println("num6 = ", num6) var( // 一行定义多个 num7, num8 = 70, 80 num9, num10 = 9.99, 100 ) fmt.Println("num7 = ", num7) fmt.Println("num8 = ", num8) fmt.Println("num9 = ", num9) fmt.Println("num10 = ", num10) }