没有引用类型
go没有引用类型在函数内部修改变量?
指针类型
测试代码如下
package main
import "fmt"
func add(a int) {
fmt.Println("a int")
fmt.Printf("%d\n", &a)
a = 1
}
func add2(a *int) {
fmt.Println("a *int")
fmt.Printf("%d\n", a)
fmt.Printf("%d\n", &a)
c := &a
fmt.Printf("&c:%d\n", &c)
}
func main(){
var a int
a = 0
fmt.Printf("%d\n", &a)
fmt.Println("初始化")
add(a)
add2(&a)
}
什么是引用类型?
cpp中接受的函数是 (int & a)
[kou@python ~]$ cat 21.cpp
#include<stdio.h>
int main(){
int a =1;
changevalue(a);
printf("%d",a);
return 0;
}
void changevalue(int &a){
a=12;
}
本文通过对比Go语言中的指针类型与引用类型,深入探讨了如何在函数内部修改变量。通过具体代码示例,展示了Go语言与C++在处理变量修改上的不同之处,强调了理解指针和引用类型在编程中的重要性。
302





