강의

멘토링

커뮤니티

Inflearn Community Q&A

oasis92126732's profile image
oasis92126732

asked

GO Language Programming Core Basics Introduction Course, Easy and Quick to Complete

String Basics

for 문 string 한글문 은 안깨지네요.

Written on

·

333

0

한글 string 으로 for을 돌려서 출력을 하는 방식을 써봤는데요.

str3 처럼 주소를 그대로 같다 쓸때 깨지지만 왜 for에서는 안깨지는지 궁금합니다. 

go

Answer 4

0

oasis92126732님의 프로필 이미지
oasis92126732
Questioner

네 감사합니다.

0

niceman님의 프로필 이미지
niceman
Instructor

UTF-8은 가변 길이 문자 인코딩 방식이라 문자를 저장할 때 1바이트에서 4바이트까지 사용하며 한글은 3바이트로 저장합니다.

Golang의 캐릭터셋 규칙입니다.

str3처름 쓸 때는 decode 학습하는 decode 함수 등으로 utf-8로 변환해서 사용하시면 깨지는 것을 방지 할 수 있습니다.

 

http://pyrasis.com/book/GoForTheReallyImpatient/Unit45/02

 

위의 링크를 확인하시면 한글 규칙에 대해서 정말 자세하게 나와있습니다.

0

oasis92126732님의 프로필 이미지
oasis92126732
Questioner

var str3 string = "고프로그래밍" 

 

for i, char := range str3 {

fmt.Printf("%c(%d)\t", char, i)  

}

0

niceman님의 프로필 이미지
niceman
Instructor

안녕하세요. 전건수님

 

해당 예제 파일 및 관련 소스를 업로드 부탁드립니다.

 

감사합니다.

oasis92126732's profile image
oasis92126732

asked

Ask a question