Avatar ·

كيفية تحويل حرف char إلى رقم int في Rust بحيث يصبح '1' إلى 1؟

مرحباً بالجميع! لقد بدأت للتو في تعلم Rust وواجهت مهمة بسيطة للوهلة الأولى. أحتاج إلى قراءة حرف من سلسلة نصية وتحويله إلى عدد صحيح. على سبيل المثال، لدي سلسلة نصية "123"، وأريد المرور عليها بحلقة، وأخذ كل حرف ('1', '2', '3') وتحويله إلى العدد الصحيح المقابل (1, 2, 3). في لغات أخرى، مثل Python أو JavaScript، يتم ذلك ببساطة: `int('1')` أو `parseInt('1')`. لكن في Rust لا أستطيع إيجاد مقابل مباشر. جربت كتابة هذا الكود: ```rust fn main() { let c: char = '1'; let n: i32 = c as i32; // محاولة 1 println!("{}", n); } ``` لكن هذا يطبع 49، وليس 1. أفهم أن 49 هو كود ASCII للحرف '1'. كيف يمكنني الحصول على القيمة الرقمية للرقم نفسه، وليس كوده؟ أحتاج إلى حل.