Avatar ·

كيفية تحويل int إلى string في Go؟ أبحث عن طريقة عملية

```html مرحباً بالجميع! لقد بدأت للتو في تعلم Go وواجهت مهمة أساسية ولكنها غير واضحة بالنسبة لي. أحتاج إلى تحويل عدد صحيح (int) إلى سلسلة نصية (string) لأتمكن من دمجها مع سلسلة أخرى أو عرضها على الشاشة. في لغات أخرى (مثل Python أو Java) يتم ذلك بسهولة: `str(42)` أو `String.valueOf(42)`. لكن في Go جربت القيام بذلك: ```go num := 42 text := "Значение: " + num fmt.Println(text) ``` وحصلت على خطأ في الترجمة: `cannot use num (type int) as type string in concatenation`. أدركت أنه في Go لا يمكنك ببساطة جمع سلسلة نصية مع رقم. ثم جربت استخدام `string(num)` — ظننت أن هذا سيعمل كما في Python: ```go num := 42 text := "Значение: " + string(num) fmt.Println(text) ``` لكن في وحدة التحكم ظهر شيء غريب: `Значение: *` (علامة نجمة أو رمز آخر). اتضح أن `string(num)` لا تحول الرقم إلى تمثيله النصي، بل إلى حرف Unicode برمز 42 (هذا هو الرمز '*'). هذا ليس ما أحتاجه على الإطلاق. ```