Avatar ·

كيفية تحويل سلسلة نصية إلى عدد صحيح (int) في Go؟ معالجة الأخطاء وأمثلة

مرحبًا بالجميع! لقد بدأت للتو في تعلم Go وواجهت مشكلة تحويل سلسلة نصية إلى عدد صحيح. أكتب آلة حاسبة بسيطة تأخذ رقمين من سطر الأوامر كسلاسل نصية ويجب أن تجمعهما. لكنني لا أستطيع فهم كيفية تحويل السلسلة النصية إلى int بشكل صحيح. إليك الكود الخاص بي: ```go package main import ( "fmt" "os" ) func main() { if len(os.Args) != 3 { fmt.Println("Usage: calculator ") return } a := os.Args[1] b := os.Args[2] // أحاول الجمع لكني أحصل على خطأ sum := a + b // هذا دمج للسلاسل النصية وليس جمعًا! fmt.Println("Sum:", sum) } ``` أفهم أن `a + b` مجرد دمج للسلاسل النصية وليس جمعًا للأرقام. في لغات أخرى استخدمت `int()` أو `parseInt()`، لكن في Go هذا لا يعمل مباشرة. جربت `int(a)` لكن المترجم يشتكي: `cannot convert a (variable of type string) to type int`. بحثت في Google ووجدت ذكرًا لحزمة `strconv`، لكنني لم أفهم تمامًا كيفية استخدامها.