23. 다양한 대입 연산자, 좌항에 상수는 올 수 없어요.
안녕하세요. 언제나 휴일, 언휴예요.
이번 게시글에서는 Go 언어의 대입 연산을 살펴보아요. Go 언어의 대입 연산에는 = 와 +=, -= ,... 등이 있어요.
대입 연산의 좌항에는 상수가 올 수 없어요. 좌항이 관리하는 메모리에 우항의 값을 설정하는 연산이기 때문이예요. 그리고 대입 연산자 좌항에 오는 표현을 l-value라고 불러요.
그리고 +=, -=, ... 등의 연산은 좌항의 값과 우항의 값을 +, -, ... 등의 연산을 먼저 수행한 후에 연산 결과를 좌항이 관리하는 메모리에 설정합니다.
새 프로젝트를 생성하여 논리 연산 표현을 사용해 보아요.
[그림 1] LiteIDE에서 새 프로젝트 생성 및 소스 파일 추가
대입 연산은 우항의 값으로 좌항 표현이 관리하는 메모리의 값을 설정하는 연산입니다.
단순 대입 연산
var i int
fmt.Println("Test 1:", i)
i = 3 //i에 3을 대입
fmt.Println("Test 2:", i)
출력 결과는 다음과 같아요.
Test 1: 0
Test 2: 3
+=, -= 같은 대입 연산을 복합 대입 연산이라고 불러요. i+=2 는 i = i+2와 같은 표현이예요.
복합 대입 연산
i += 2 //i = i+2
fmt.Println("Test 3:", i)
i -= 7 //i = i-7
fmt.Println("Test 4:", i)
출력 결과는 다음과 같아요.
Test 3: 5
Test 4: -2
[그림 2] 대입 연산 예제 실행 화면
관련 게시글
[구글 Go 하자] 16. 직관적인 사칙 연산과 비교해 보세요.
[구글 Go 하자] 17. 변수의 값을 특정 범위에서 순환하게 하기
[구글 Go 하자] 18. 자신의 값을 1 증가하거나 감소시키는 증감 연산자
[구글 Go 하자] 19. Go언어에서는 비교 연산자를 사용하는 곳이 많아요.
[구글 Go 하자] 20. Go언어의 논리 연산의 피연산자는 bool 형식만 올 수 있어요.
[구글 Go 하자] 21. 비트 단위로 연산하는 비트 연산자
[구글 Go 하자] 22. 쉬프트 연산은 비트 단위로 자리를 이동합니다.
앞으로 프로그래밍 관련 글은 새롭게 개설한 언제나 휴일 전용 사이트에서 만나보세요.
2017년 1월 1일까지 이 곳의 프로그래밍 자료는 http://ehpub.co.kr 로 옮길 예정입니다.
'언어 자료구조 알고리즘 > 구글 Go' 카테고리의 다른 글
[구글 Go 하자] 28. 구글 Go 언어 선택문은 switch (0) | 2016.10.12 |
---|---|
[구글 Go 하자] 27. Go 언어 반복문은 for 문, 반복문 탈출은 break (0) | 2016.10.11 |
[구글 Go 하자] 26. 엄격한 폼을 요구하는 if 조건문 (0) | 2016.10.08 |
[구글 Go 하자] 25. 표준 입력 함수 Scanln, Scan, Scanf 사용하기 (0) | 2016.10.03 |
[구글 Go 하자] 24. 표준 출력 함수 Println, Print, Printf 사용하기 (0) | 2016.06.03 |
[구글 Go 하자] 22. 쉬프트 연산은 비트 단위로 자리를 이동합니다. (0) | 2016.06.01 |
[구글 Go 하자] 21. 비트 단위로 연산하는 비트 연산자 (0) | 2016.06.01 |
[구글 Go 하자] 20. Go언어의 논리 연산의 피연산자는 bool 형식만 올 수 있어요. (0) | 2016.06.01 |
[구글 Go 하자] 19. Go언어에서는 비교 연산자를 사용하는 곳이 많아요. (0) | 2016.05.30 |
[구글 Go 하자] 18. 자신의 값을 1 증가하거나 감소시키는 증감 연산자 (0) | 2016.05.30 |