편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 | 당신의 편집 | ||
29번째 줄: | 29번째 줄: | ||
=== 코드 보기 === | === 코드 보기 === | ||
소스파일은 해당 프로젝트 폴더의 src/main.rs에 있습니다. 관습적으로, 러스트는 .rs 확장자를 사용합니다. | 소스파일은 해당 프로젝트 폴더의 src/main.rs에 있습니다. 관습적으로, 러스트는 .rs 확장자를 사용합니다. | ||
< | <source lang="rust"> | ||
fn main() { | fn main() { | ||
println!("Hello, world!"); | println!("Hello, world!"); | ||
36번째 줄: | 36번째 줄: | ||
=== 코드 해석 === | === 코드 해석 === | ||
< | <source lang="rust"> | ||
fn main() | fn main() | ||
</syntaxhighlight> | </syntaxhighlight> | ||
은 main이라는 이름의 함수를 선언한다는 문장이다. fn이 main이라는 것이 함수라는 것을 알려 줍니다. 그 다음의 ()은 main이라는 함수는 매개변수(더 자세한 설명은 다음에...)을 받지 않는 다는 뜻이다. 그 다음 {}(중괄호)사이에 있는 내용이, main함수가 하는 일이 된다. | 은 main이라는 이름의 함수를 선언한다는 문장이다. fn이 main이라는 것이 함수라는 것을 알려 줍니다. 그 다음의 ()은 main이라는 함수는 매개변수(더 자세한 설명은 다음에...)을 받지 않는 다는 뜻이다. 그 다음 {}(중괄호)사이에 있는 내용이, main함수가 하는 일이 된다. | ||
< | <source lang="rust"> | ||
println!("hello, world!"); | println!("hello, world!"); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
49번째 줄: | 49번째 줄: | ||
변수(variable)란 프로그래머가 수정할 수 있는 메모리 공간을 말한다. 실생활에 비유하자면 컵이나 상자에 비유할 수 있다. | 변수(variable)란 프로그래머가 수정할 수 있는 메모리 공간을 말한다. 실생활에 비유하자면 컵이나 상자에 비유할 수 있다. | ||
컵과 상자에는 음료수나 물건을 집어 넣어 보관할 수 있다. 변수또한 프로그램안에서 음료수나 물건과 비슷한 데이터(값)을 집어 넣고 보관할 수 있다. Rust에서 변수는 다음과 같이 만든다. | 컵과 상자에는 음료수나 물건을 집어 넣어 보관할 수 있다. 변수또한 프로그램안에서 음료수나 물건과 비슷한 데이터(값)을 집어 넣고 보관할 수 있다. Rust에서 변수는 다음과 같이 만든다. | ||
< | <source lang="rust"> | ||
let 변수이름:데이터형 = 데이터(값); | let 변수이름:데이터형 = 데이터(값); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
예를 들면 사람의 나이를 저장하는 변수를 만든다고 하면 | 예를 들면 사람의 나이를 저장하는 변수를 만든다고 하면 | ||
< | <source lang="rust"> | ||
let age:i32 = 17; | let age:i32 = 17; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
이렇게 하면 됩니다. | 이렇게 하면 됩니다. | ||
이 중 ''':데이터형'''은 데이터(값)의 데이터형이 명확하다면 생략할 수 있다. 따라서 위의 코드는 다음과 같이 줄일 수 있다. | 이 중 ''':데이터형'''은 데이터(값)의 데이터형이 명확하다면 생략할 수 있다. 따라서 위의 코드는 다음과 같이 줄일 수 있다. | ||
< | <source lang="rust"> | ||
let age = 17; //또는 let age:_ = 17; | let age = 17; //또는 let age:_ = 17; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
66번째 줄: | 66번째 줄: | ||
예를 들어서 | 예를 들어서 | ||
< | <source lang="rust"> | ||
fn main(){//첫번째 범위 | fn main(){//첫번째 범위 | ||
let a = 50; | let a = 50; | ||
78번째 줄: | 78번째 줄: | ||
==== 변수는 기본적으로 수정이 금지 ==== | ==== 변수는 기본적으로 수정이 금지 ==== | ||
한번 선언된 변수는 기본적으로 다른 값으로 바꾸는 것이 안 된다. 따라서 다음과 같은 코드는 컴파일중에 에러가 난다. | 한번 선언된 변수는 기본적으로 다른 값으로 바꾸는 것이 안 된다. 따라서 다음과 같은 코드는 컴파일중에 에러가 난다. | ||
< | <source lang="rust"> | ||
fn main() { | fn main() { | ||
let a = 5; | let a = 5; | ||
88번째 줄: | 88번째 줄: | ||
변수의 데이터(값)을 수정하는 방법은 변수를 mut을 붙이는 방법이다. | 변수의 데이터(값)을 수정하는 방법은 변수를 mut을 붙이는 방법이다. | ||
< | <source lang="rust"> | ||
fn main() { | fn main() { | ||
let mut a = 5; | let mut a = 5; | ||
97번째 줄: | 97번째 줄: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
다른 방법으로는 변수의 재정의가 있다. 이럴 경우 다른 값을 지니면서도, mut키워드를 사용하지 않을 수 있다. | 다른 방법으로는 변수의 재정의가 있다. 이럴 경우 다른 값을 지니면서도, mut키워드를 사용하지 않을 수 있다. | ||
< | <source lang="rust"> | ||
fn main() { | fn main() { | ||
let a = 5; | let a = 5; | ||
145번째 줄: | 145번째 줄: | ||
===if=== | ===if=== | ||
'''if'''은 조건문으로 조건에 따라 어떤 코드를 실행할 지를 결정할 수 있습니다. | '''if'''은 조건문으로 조건에 따라 어떤 코드를 실행할 지를 결정할 수 있습니다. | ||
< | <source lang="rust"> | ||
use std::io::{self, Read,Write}; | use std::io::{self, Read,Write}; | ||
struct Console{ | struct Console{ | ||
185번째 줄: | 185번째 줄: | ||
match문은 Rust의 자랑 중 하나로 정말 강력한 조건문이다. | match문은 Rust의 자랑 중 하나로 정말 강력한 조건문이다. | ||
앞의 if문을 match문으로 바꾸면 다음과 같습니다. | 앞의 if문을 match문으로 바꾸면 다음과 같습니다. | ||
< | <source lang="rust"> | ||
use std::io::{self, Read,Write}; | use std::io::{self, Read,Write}; | ||
struct Console{ | struct Console{ | ||
220번째 줄: | 220번째 줄: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
이런 것외에도 다양한 방법으로 사용할 수 있습니다. | 이런 것외에도 다양한 방법으로 사용할 수 있습니다. | ||
< | <source lang="rust"> | ||
use std::io::{self, Read,Write}; | use std::io::{self, Read,Write}; | ||
struct Console{ | struct Console{ | ||
270번째 줄: | 270번째 줄: | ||
===Option=== | ===Option=== | ||
Option은 기본으로 있는 enum형이다. 이 Option은 어떤 데이터가 존재하는 지, 혹은 없는 지를 나타내기 위해 사용한다. | Option은 기본으로 있는 enum형이다. 이 Option은 어떤 데이터가 존재하는 지, 혹은 없는 지를 나타내기 위해 사용한다. | ||
< | <source lang="rust"> | ||
fn main(){ | fn main(){ | ||
let a:Option<i32> = Some(5); | let a:Option<i32> = Some(5); |