التابع IO.puts‎ في روبي

من موسوعة حسوب
< Ruby‏ | IO
مراجعة 16:47، 13 نوفمبر 2018 بواسطة محمد-بغات (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>IO.puts‎</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method [[تصنيف: Ruby IO]...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

يكتب التابع puts الكائن(اات) المعطى في مجرى د/خ ios. ويكتب سطرًا جديدا بعد أي سطر لا ينتهي بالفعل بمحرف السطر الجديد. ثم يعيد nil.

يجب أن يكون المجرى مفتوحًا في وضعية الكتابة. إن كان الوسيط المعطى مصفوفة، فسيكتب التابع puts كل عنصر من عناصر المصفوفة في سطر جديد. سيتم تحويل كل كائن لا يساوي سلسلة نصية أو مصفوفة عن طريق استدعاء تابعه to_s. في حال استدعائه بدون وسائط، فستقوم بإخراج سطر جديد واحد.


produces:


لاحظ أن puts يستخدم دائماً السطور الجديدة، ولا يتأثر بفاصل سجل الإخراج ($\).

البنية العامة

puts(obj, ...)  nil

المعاملات

obj‎

كائن

...‎

القيمة المُعادة

أمثلة

مثال على استخدام التابع puts‎:

$stdout.puts("this", "is", ["a", "test"])

انظر أيضا

  • التابع putc: إن كان الوسيط المعطى obj (انظر فقرة البنية العامة) عددًا Numeric، فسيكتب الحرف الذي يكون رمزه هو البايت الأقل دلال (least-significant byte) من obj. وإن كان obj سلسلة نصية String، فسيكتب أول حرف من obj في مجرى د/خ ios. خلاف ذلك، سيُطلق الاستثناء TypeError.
  • التابع pwrite: يكتب السلسلة النصية المعطاة (انظر فقرة البنية العامة) في مجرى د/خ ios عند موضع الإزاحة offset باستخدام استدعاء النظام pwrite ()‎. هذا مفيد مقارنة بالجمع بين #seek و #write في كونه ذريًا (atomic)، مما يسمح لعدة مهام فرعية/عمليات بالتشارك في نفس مجرى د/خ IO لقراءة الملف من مواضع مختلفة. هذا سيتجاوز أي مساحة تخزين مؤقت للمستخدمين من طبقة مجرى د/خ IO. سيعيد عدد البايتات المكتوبة. وسيُطلق الاستثناء SystemCallError في حال حدوث خطأ، أو NotImplementedError إذا لم يكن نظام الشغيل يدعم استدعاء النظام.

مصادر