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