Language/Rust

반응형
반응형
Language/Rust

[Rust]Functions:Statements&Expressions

러스트는 기본적으로 main함수를 통해 실행된다. 함수명은 snake_case(소문자)로 작성하고 _언더바로 단어를 구분한다. // function fn main() { println!("Hello, world!"); another_function(); } fn another_function() { println!("Another function."); } ==================================== Hello, world! Another function. // parameters fn main() { another_function(5); } fn another_function(x: i32) { println!("The value of x is: {x}"); } ===========..

Language/Rust

[Rust]데이터타입

러스트는 정적으로 타입이 지정된 언어이다. 컴파일 단계에서 모든 변수의 타입이 지정돼 있어야 한다. let guess: u32 = "42".parse().expect("Not a number!"); 위와 같이 숫자인지 문자인지 명확하지 않은 경우에는 변수의 타입을 정확하게 지정해주어야한다. Scalar Type 스칼라타입은 단 하나의 값만을 저장할 수 있는 데이터 타입을 의미한다. 반대개념으로는 Composite 타입이 있으며, 이는 두개 이상의 값을 저장할 수 있는 데이터 타입으로 대표적인 예로 enum이 있다. 1. Integer (정수형) 부호의 유무(+,-)와 비트에 따라 나뉘며 부호가 있는 정수는 i, 부호가 없는 정수는 u로 표기한다. 러스트의 기본 정수 타입은 i32이다. 2. Float (..

Language/Rust

[Rust] 변수 & 상수

let 변수와 불변성 Rust의 기본 변수는 let으로 불변성을 가진다. 따라서 이미 선언된 변수에 값을 재할당할 경우 컴파일 에러가 발생한다. 1) mut을 통한 가변성 변수 선언 mut 접두어로 가변성 변수 선언이 가능하다. fn main() { let mut x = 5; println!("The value of x is : {x}"); x = 6; println!("The value of x is : {x}"); } =============== result =============== The value of x is : 5 The value of x is : 6 2) Shadowing 이전 변수와 동일한 이름으로 새 변수를 선언할 수 있다. 첫 번째 변수는 두 번째 변수에 의해 가려지고, 컴파일러는..

Language/Rust

[Rust] 개념 & 설치

Rust 모질라 리서치에서 개발한 범용 프로그래밍 언어로서, 전적으로 오픈소스로 개발되고 있으며, 커뮤니티로부터 피드백 및 모질라 재단이 개발을 후원하고 있다. 특이점 '소유권' Ownership 현재까지 깔짝 맛본것에 의하면, rust를 '소유권'이라는 특정 방식을 통해 메모리 관리를 하고 있다. 쉽게 말해 A라는 데이터를 main에 선언하더라도 이를 다른 함수로 보내면 데이터의 값도 해당 함수로 이전되고, 처음 장소인 main에서 더이상 A를 사용할 수 없게 된다. 따라서 가비지콜렉터(GC)에서 사용하지 않는 메모리를 정리하는 부담을 덜어주게 된다. 자세한 설명은 Ownership챕터에서 확인 가능하다. 설치 - Linux or macOS의 경우 rustup을 통해서 설치하게 된다. $ curl --..

emojiyeon
'Language/Rust' 카테고리의 글 목록 (2 Page)