Rumah > Artikel > pembangunan bahagian belakang > Apakah Perbezaan Antara Literal Rune dan Literal String dalam Go?
Memahami Literal Rune dalam Go
Dalam kod Go anda, anda menghadapi ralat yang berkaitan dengan "lebih daripada satu aksara dalam literal rune." Untuk memahami ralat ini, mari kita mendalami konsep rune literal dalam Go dan sebab anda perlu melaraskan kod anda dengan sewajarnya.
Rune Literals dalam Go
In Go, literal rune mewakili titik kod Unicode dan digunakan untuk menyatakan aksara tunggal. Ia disertakan dalam petikan tunggal (' '). Literal Rune berbeza daripada literal rentetan, yang disertakan dalam petikan berganda (" ") atau petikan belakang (`).
Ralat: Berbilang Aksara dalam Literal Rune
Apabila bekerja dengan literal rune, adalah penting untuk memastikan bahawa terdapat hanya satu aksara yang disertakan dalam petikan tunggal. Dalam kod anda, anda cuba menggunakan penentu format rentetan (%d) dengan literal rune dalam fungsi Printf. Ini tidak betul kerana %d bertujuan untuk integer perpuluhan.
Penyelesaian: Gunakan %q atau %v
Untuk menyelesaikan isu ini, anda perlu mengubah suai penentu format untuk memadankan jenis data yang anda cetak. Dalam kes ini, memandangkan anda sedang mencetak rune, anda harus menggunakan sama ada penentu format %q atau %v.
Berikut ialah kod yang disemak dengan penentu format yang betul:
if a % 2 == 0 { fmt.Println("%d is an even number", a) } else { fmt.Println("%d is an odd number", a) }
Atas ialah kandungan terperinci Apakah Perbezaan Antara Literal Rune dan Literal String dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!