이 코드를 컴파일하면, 다음과 같은 에러메시지가 출력되는 것을 볼 수 있다. 에러가 나는 이유는 mismatched types 때문이다. secret_number는 숫자형 변수, guess는 문자열 변수이기 때문에 서로 타입이 같지 않아 둘을 비교하는 cmp()에서 에러가 발생한다. Rust는 이와 같이 컴파일 과정에서 변수 타입을 추론하여 에러가 나는 부분을 유추할 수 있다. 그래서 다음과 같이 코드를 한 줄 추가해준다. 위에서 guess라는 변수가 선언되었지만, 이 전의 타입을 새로운 타입으로 셰도잉(shadowing)할 수 있다. 첫번째 변수가 두번째 변수에 의해 가려져, 프로그램이 보는 값과 타입은 두번째 변수의 값과 타입이 된다. trim()은 양 끝의 공백을 제거한다. 개행(\n)을 제거하기 ..
러스트를 시작해보자! 다음 main.rs의 코드를 보자. fn main () : main함수는 항상 모든 실행 가능한 Rust 프로그램에서 실행되는 첫 번째 코드이다. println!("Hello, world!"); : Rust 스타일은 탭이 아닌 4개의 공백으로 들여쓰기 하는 것이다. println!은 Rust 매크로를 호출한다. 대신 함수를 호출하면 println으로 입력된다. ! 는 일반적인 함수 대신 매크로를 호출하는 수단을 사용한다. 매크로가 항상 동일한 큐칙을 따르지는 않는다. 이제 이 코드를 실행시켜 보자. 우선 main.rs의 파일이 있는 디렉토리로 들어가서 명령창에 rustc main.rs 를 입력해보자. 나는 윈도우를 사용하고 있기 때문에 다음과 같은 파일들이 생성되었다. 이제 이 파일..
러스트(Rust)는 모질라에서 개발한 범용 프로그래밍 언어이다. #안정성 #속도 #병렬프로그래밍 #함수형프로그래밍 #시스템프로그래밍 모질라 재단에서 2010년 7월 7일에 처음 발표했으며, 2015년 5월 15일에 안정 버전이 정식 발표된 이후, 2021년 2월부터는 러스트 재단으로 분리되어 AWS, Google, 화웨이, MS, 모질라 재단을 초기 회원사로 발족했다. 러스트는 C/C++과 동등한 수준의 속도를 달성하면서 안전성, 동시성을 목표로 한다. 특징 1. 러스트는 CPU 병행처리 및 메모리 자원 누수 방지등의 언어 철학 바탕위에 설계되었다. 2. 러스트는 인터넷에서 실행되는 서버 및 클라이언트 프로그램을 개발하는데 적합한 언어를 목표로 설계되었다. 이 목표에 따라 러스트는 안정성과 병행 프로그래..