Skip to content
เข้าสู่ระบบ

FFI - เชื่อมต่อกับภาษา C

std::ffi มี types สำหรับเชื่อมต่อกับ C และระบบปฏิบัติการ! การทำ FFI เป็นหนึ่งในจุดแข็งของ Rust ที่ช่วยให้เราสามารถใช้งาน C libraries ที่มีอยู่แล้วได้อย่างปลอดภัย หรือเขียน libraries ที่ภาษาอื่นเรียกใช้ได้

FFI (Foreign Function Interface) คือกลไกที่ช่วยให้โปรแกรมที่เขียนด้วยภาษาหนึ่งสามารถเรียกใช้ฟังก์ชันจากภาษาอื่นได้ ใน Rust เราใช้ FFI สำหรับหลายวัตถุประสงค์

// ============================================
// ตัวอย่างการใช้งาน FFI ในโลกจริง
// ============================================
// 1. เรียกใช้ C libraries เช่น OpenSSL, SQLite, zlib
// - ไม่ต้องเขียน crypto library ใหม่
// - ใช้ประโยชน์จาก libraries ที่ผ่านการทดสอบมาแล้ว
// 2. เรียกใช้ OS APIs โดยตรง
// - Windows API (kernel32.dll, user32.dll)
// - POSIX APIs (libc)
// - macOS frameworks
// 3. สร้าง Rust library ที่ภาษาอื่นเรียกใช้ได้
// - Python bindings (PyO3)
// - Node.js native modules (Neon)
// - Ruby extensions
// 4. Embedded systems
// - เรียกใช้ hardware drivers
// - ใช้คู่กับ assembly code
fn main() {
println!("FFI เปิดโอกาสให้ Rust ทำงานร่วมกับระบบอื่นได้!");
}

เข้าสู่ระบบเพื่อดูเนื้อหาเต็ม

ยืนยันตัวตนด้วยบัญชี Google เพื่อปลดล็อกบทความทั้งหมด