시뻘건 개발 도전기

러스트 7 - 제어문과 반복문 본문

프로그래밍/RUST

러스트 7 - 제어문과 반복문

시뻘건볼때기 2019. 2. 23. 23:25
반응형

Rust도 똑같다!



1. 제어문

개발을 하다 보면 꼭 분기쳐야 하는 순간이 종종 있다. 그럴 때 보통 제어문을 사용한다. (꼭 베스트는 아니다.)

제어문 if표현식은 조건에 따라 실행되는 녀석이다.

if를 직역한 그대로 "만약 ~라면 실행" 혹은 "만약 ~가 아니라면 실행"이라고 생각하자.

즉, 아래 언급하는 조건식은 항상 꼭 무조건 boolean(참 혹은 거짓 : true false)값을 가져야 한다!




if 조건식 {

조건식이 참일 경우 실행할 블록

} else {

조건식이 거짓일 경우 실행할 블록

}


만약 조건식이 참일 경우 ①번 블록이 실행 된다면!!! ②번 블록은 처다도 보지 않는다.

조건식과 블록을 잘 짠다면 속도면에서 성능을 높일 수 있을 것 같다.




조건식을 많이 걸어야하는 경우, else if문을 사용하면 된다.


다음은 조건식에서 많이 사용하는 녀석들을 모아둔 코드이다.

급하게 짜느라 개판 5분 전이지만....ㅎㅎㅎㅎㅎ



앞서 언급했지만 if문은 표현식이다. 즉! 변수 선언할 때 사용할 수 있다는 것.

if문에서 반환되는 값이 if_num에 저장된다.


세미콜론(;)을 잊지말자. (잊더라도 cargo가 위치와 오류 내용을 딱! 찝어주기 때문에 딱히 뭐...걱정 하지 않아도 되지만... 너무 의지하지말자)




if와 else는 하나다! if~else문 혹은 if~if else~else문이라고 하지 않는가!?

다음 코드와 결과를 한 번 보자.



cargo는 정말 대단하고도 신기한 녀석.... 이리도 친절하고 정확한 결과를 본적이 없다.....(감탄중)

컴파일을 돌 때, if_num이라는 녀석에 값을 bind해야 하는데 어떤 블록은 1(정수)을 반환하고 어떤 블록은 문자열을 반환해버리면 안되지!!!!

이 말이 이해가 되지 않는 다면 <변수와 타입 #2> (https://maeng-dev.tistory.com/9) 포스팅을 한 번 더 보길 바란다.

rust는 statically typed language이다. 명심하자.






2. 반복문



가장 많이 사용하는 녀석중 하나인 반복문... 어떨 때는 짜증나고 쓰기 싫은 녀석인데. 언제는 효자같은 녀석이다.

rust에서 제공하는 반복문 for, while, loop문을 알아보자.



2-1. for문

배열의 index는 0부터 시작하는 것쯤은 모두가 알고 있는 사실.


for문의 포맷은 다음과 같다.

for variable in iterator {

// TODO :  Code to execute

}


한 마디로 arr의 있는 녀석들(element)를 v에 담아서 실행하겠다(?)라고 이해하면 쉽게 응용할 수 있을 것 같다.



2-2. while문




while문의 포맷을 보자.

while expression {

// TODO :  Code to execute

}


즉, 조건식이다. 가장 먼저 조건식이 참이면 실행하고 다시 검사하는 방식.

참 -> 실행 -> 참 -> 실행 -> ........ -> 거짓 -> 끝 이라는 것!!!




2-3. loop문




loop문의 포맷은!??!?

loop {

// TODO :  Code to execute

}



뭐가 없다..... 조건식도 없고 index도 없고....단순 그 자체.

한 마디로 무조건. 꼭! 무슨일이 있어도 항상 실행하는 녀석이라는 것. 그렇기 때문에 무한루프에 빠지기 쉽다.

(만약 무한루프에 빠졌다면 ctrl + c를 누르세요ㅎㅎㅎㅎㅎ)

반응형

'프로그래밍 > RUST' 카테고리의 다른 글

러스트 9 - Ownership : 소유권 #1  (0) 2019.02.24
러스트 8 - 주석  (0) 2019.02.23
러스트 6 - 함수  (0) 2019.02.17
러스트 5 - 변수와 타입 #2  (0) 2019.02.16
러스트 4 - 변수와 타입 #1  (0) 2019.02.16
Comments