s := "labex"일 때 fmt.Println(s[0])은 왜 108을 출력하고, fmt.Printf("%c", s[0])은 l을 출력하나요?
s := "labex"
fmt.Println(s[0])
108
fmt.Printf("%c", s[0])
l
Println이 문자열의 첫 문자를 정수로 영구 변환합니다.
Println
Go는 1부터 인덱싱하므로 인덱스 0은 108번째 문자를 의미합니다.
문자열 인덱싱은 인코딩된 바이트 값을 반환하며, %c는 해당 숫자 코드를 문자로 표시합니다.
%c
%c는 전달된 값과 관계없이 항상 l을 출력합니다.