시리즈:쉽게 배우는 프로그래밍 입문/Rust 편집하기

편집하면 당신의 IP 주소가 공개적으로 기록됩니다. 계정을 만들고 로그인하면 편집 시 사용자 이름만 보이며, 위키 이용에 여러 가지 편의가 주어집니다.

편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.

최신판 당신의 편집
29번째 줄: 29번째 줄:
=== 코드 보기 ===
=== 코드 보기 ===
소스파일은 해당 프로젝트 폴더의 src/main.rs에 있습니다. 관습적으로, 러스트는 .rs 확장자를 사용합니다.
소스파일은 해당 프로젝트 폴더의 src/main.rs에 있습니다. 관습적으로, 러스트는 .rs 확장자를 사용합니다.
<syntaxhighlight lang="rust">
<source lang="rust">
fn main() {
fn main() {
     println!("Hello, world!");
     println!("Hello, world!");
36번째 줄: 36번째 줄:


=== 코드 해석 ===
=== 코드 해석 ===
<syntaxhighlight lang="rust">
<source lang="rust">
fn main()
fn main()
</syntaxhighlight>
</syntaxhighlight>
은 main이라는 이름의 함수를 선언한다는 문장이다. fn이 main이라는 것이 함수라는 것을 알려 줍니다. 그 다음의 ()은 main이라는 함수는 매개변수(더 자세한 설명은 다음에...)을 받지 않는 다는 뜻이다. 그 다음 {}(중괄호)사이에 있는 내용이, main함수가 하는 일이 된다.
은 main이라는 이름의 함수를 선언한다는 문장이다. fn이 main이라는 것이 함수라는 것을 알려 줍니다. 그 다음의 ()은 main이라는 함수는 매개변수(더 자세한 설명은 다음에...)을 받지 않는 다는 뜻이다. 그 다음 {}(중괄호)사이에 있는 내용이, main함수가 하는 일이 된다.


<syntaxhighlight lang="rust">
<source lang="rust">
println!("hello, world!");
println!("hello, world!");
</syntaxhighlight>
</syntaxhighlight>
49번째 줄: 49번째 줄:
변수(variable)란 프로그래머가 수정할 수 있는 메모리 공간을 말한다. 실생활에 비유하자면 컵이나 상자에 비유할 수 있다.
변수(variable)란 프로그래머가 수정할 수 있는 메모리 공간을 말한다. 실생활에 비유하자면 컵이나 상자에 비유할 수 있다.
컵과 상자에는 음료수나 물건을 집어 넣어 보관할 수 있다. 변수또한 프로그램안에서 음료수나 물건과 비슷한 데이터(값)을 집어 넣고 보관할 수 있다. Rust에서 변수는 다음과 같이 만든다.
컵과 상자에는 음료수나 물건을 집어 넣어 보관할 수 있다. 변수또한 프로그램안에서 음료수나 물건과 비슷한 데이터(값)을 집어 넣고 보관할 수 있다. Rust에서 변수는 다음과 같이 만든다.
<syntaxhighlight lang="rust">
<source lang="rust">
let 변수이름:데이터형 = 데이터(값);
let 변수이름:데이터형 = 데이터(값);
</syntaxhighlight>
</syntaxhighlight>
예를 들면 사람의 나이를 저장하는 변수를 만든다고 하면
예를 들면 사람의 나이를 저장하는 변수를 만든다고 하면
<syntaxhighlight lang="rust">
<source lang="rust">
let age:i32 = 17;
let age:i32 = 17;
</syntaxhighlight>
</syntaxhighlight>
이렇게 하면 됩니다.
이렇게 하면 됩니다.
이 중 ''':데이터형'''은 데이터(값)의 데이터형이 명확하다면 생략할 수 있다. 따라서 위의 코드는 다음과 같이 줄일 수 있다.
이 중 ''':데이터형'''은 데이터(값)의 데이터형이 명확하다면 생략할 수 있다. 따라서 위의 코드는 다음과 같이 줄일 수 있다.
<syntaxhighlight lang="rust">
<source lang="rust">
let age = 17; //또는 let age:_ = 17;  
let age = 17; //또는 let age:_ = 17;  
</syntaxhighlight>
</syntaxhighlight>
66번째 줄: 66번째 줄:


예를 들어서
예를 들어서
<syntaxhighlight lang="rust">
<source lang="rust">
fn main(){//첫번째 범위
fn main(){//첫번째 범위
   let a = 50;
   let a = 50;
78번째 줄: 78번째 줄:
==== 변수는 기본적으로 수정이 금지 ====
==== 변수는 기본적으로 수정이 금지 ====
한번 선언된 변수는 기본적으로 다른 값으로 바꾸는 것이 안 된다. 따라서 다음과 같은 코드는 컴파일중에 에러가 난다.
한번 선언된 변수는 기본적으로 다른 값으로 바꾸는 것이 안 된다. 따라서 다음과 같은 코드는 컴파일중에 에러가 난다.
<syntaxhighlight lang="rust">
<source lang="rust">
fn main() {
fn main() {
     let a = 5;
     let a = 5;
88번째 줄: 88번째 줄:


변수의 데이터(값)을 수정하는 방법은 변수를 mut을 붙이는 방법이다.
변수의 데이터(값)을 수정하는 방법은 변수를 mut을 붙이는 방법이다.
<syntaxhighlight lang="rust">
<source lang="rust">
fn main() {
fn main() {
     let mut a = 5;
     let mut a = 5;
97번째 줄: 97번째 줄:
</syntaxhighlight>
</syntaxhighlight>
다른 방법으로는 변수의 재정의가 있다. 이럴 경우 다른 값을 지니면서도, mut키워드를 사용하지 않을 수 있다.
다른 방법으로는 변수의 재정의가 있다. 이럴 경우 다른 값을 지니면서도, mut키워드를 사용하지 않을 수 있다.
<syntaxhighlight lang="rust">
<source lang="rust">
fn main() {
fn main() {
     let a = 5;
     let a = 5;
145번째 줄: 145번째 줄:
===if===
===if===
'''if'''은 조건문으로 조건에 따라 어떤 코드를 실행할 지를 결정할 수 있습니다.
'''if'''은 조건문으로 조건에 따라 어떤 코드를 실행할 지를 결정할 수 있습니다.
<syntaxhighlight lang="rust">
<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문으로 바꾸면 다음과 같습니다.
<syntaxhighlight lang="rust">
<source lang="rust">
use std::io::{self, Read,Write};
use std::io::{self, Read,Write};
struct Console{
struct Console{
220번째 줄: 220번째 줄:
</syntaxhighlight>
</syntaxhighlight>
이런 것외에도 다양한 방법으로 사용할 수 있습니다.
이런 것외에도 다양한 방법으로 사용할 수 있습니다.
<syntaxhighlight lang="rust">
<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은 어떤 데이터가 존재하는 지, 혹은 없는 지를 나타내기 위해 사용한다.
<syntaxhighlight lang="rust">
<source lang="rust">
fn main(){
fn main(){
   let a:Option<i32> = Some(5);
   let a:Option<i32> = Some(5);
리브레 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-동일조건변경허락 3.0 라이선스로 배포됩니다(자세한 내용에 대해서는 리브레 위키:저작권 문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
글이 직접 작성되었거나 호환되는 라이선스인지 확인해주세요. 리그베다 위키, 나무위키, 오리위키, 구스위키, 디시위키 및 CCL 미적용 사이트 등에서 글을 가져오실 때는 본인이 문서의 유일한 기여자여야 하고, 만약 본인이 문서의 유일한 기여자라는 증거가 없다면 그 문서는 불시에 삭제될 수 있습니다.
취소 편집 도움말 (새 창에서 열림)

| () [] [[]] {{}} {{{}}} · <!-- --> · [[분류:]] · [[파일:]] · [[미디어:]] · #넘겨주기 [[]] · {{ㅊ|}} · <onlyinclude></onlyinclude> · <includeonly></includeonly> · <noinclude></noinclude> · <br /> · <ref></ref> · {{각주}} · {|class="wikitable" · |- · rowspan=""| · colspan=""| · |}