ここ 1 年で作成・更新された記事を「"golang" ポインタに値をセットする int」でググっても、わかりやすいタイトルがヒットしなかったので、自分のググラビリティとして。
TL; DR (今北産業)
変数の前に*を付ける
func resetToTen(i *int) {
*i = 10 // <- ここ
}
動くサンプル
package main
import "fmt"
func main() {
i := 100
resetToTen(&i)
fmt.Println(i)
}
func resetToTen(i *int) {
*i = 10
}
// Output: 10
- オンラインで動作をみる @ Go Playground
参考文献
-
Go で関数に渡したポインタの値を変更するには @ Qiita
- 「
&
や*
をどうつけたらいいか、よくわからなくなってしまいがち」な人は必読。
- 「