這次是我第二次寫鐵人賽的文章了,上次參加寫了 Rust 的教學,得到了一些讀者的回應,真的很感謝。 這次要來寫的主題是關於 Rust 的語言特性,這些特性又是如...
在介紹 Rust 以前要先來談談為什麼用 Rust ,Rust 雖說是一個相對算新的語言,跟以往介紹系統運作所使用的 C 比較來的話,不過 Rust 背後有個強...
Rust 中的列舉是 Rust 一個強大的功能,它跟 C 的列舉最大的不同是,它可以帶有資料 enum Foo { A(i32), B { a:...
Rust 中有閉包這種東西 let x = 42; let f = || println!("x: {}", x); f(); // 會印...
這功能或許平常比較不常用一點,它長這樣子 trait Name { fn name(&self); } struct Foo; impl Nam...
資料在記憶體中長什麼樣呢?我們宣告的變數,不管是區域變數或是全域變數都存在記憶體中,甚至是程式碼也是,不過我們先把程式碼的部份留著,先來試著看看變數在記憶體中是...
本系列的程式碼都有在 Ubuntu 18.04 下以目前的穩定版 Rust 1.37 測試過 這次的程式碼在 https://github.com/Dan...
在上一篇中講到了資料段 (.data) ,今天來講講在記憶體中到底放了些什麼,首先,有個很重要的觀念要知道,程式也是資料: use std::slice; f...
這個 stack overflow 並不是指程式設計師用的問答網站的那個 stackoverflow ,而是實際的堆疊溢位,也就是堆疊中的資料存取超過範圍了,那...
這次的程式碼在 https://github.com/DanSnow/ironman-2019/tree/master/buffer-overflow 這篇...