الفرق بين المراجعتين لصفحة: «Ruby/IO/ungetc»

من موسوعة حسوب
< Ruby‏ | IO
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>IO.ungetc‎</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف: Ruby Method تصنيف: Ruby I...'
 
لا ملخص تعديل
سطر 3: سطر 3:
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby IO]]
[[تصنيف: Ruby IO]]
يدفع التابع <code>ungetc</code> حرفا واحدا (المُمرر كوسيط) في [[Ruby/IO|مجرى د/خ]] الذي استُدعي معه <code>ios</code>، بحيث ستعيدها القراءة التالية من المخزن المؤقت (buffer). لا يمكنك أن تدفع إلا حرف واحد فقط قبل عملية القراءة اللاحقة (أي، لن تتمكن من قراءة إلا آخر حرف من الحروف التي دفتعها). ليس له أي تأثير مع القراءات غير التخزينية (unbuffered reads) (مثل <code>IO#sysread</code>).
يدفع (Pushes back) التابع <code>ungetc</code> حرفا واحدا (المُمرر كوسيط) في [[Ruby/IO|مجرى د/خ]] الذي استُدعي معه، بحيث تعيده القراءة التالية من المخزن المؤقت (buffer).  
 
لا يمكنك أن تدفع إلا حرفا واحدا فقط قبل عملية القراءة اللاحقة (أي، لن تتمكن من قراءة إلا آخر حرف من الحروف التي دفتعها).
 
ليس للتابع <code>ungetc</code> أي تأثير مع القراءات غير التخزينية (unbuffered reads) (مثل <code>[[Ruby/IO/sysread|sysread]]</code>).
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">ungetc(string)→ nil‎</syntaxhighlight>
<syntaxhighlight lang="ruby">ungetc(string)→ nil‎</syntaxhighlight>
سطر 10: سطر 14:
[[Ruby/String|سلسلة نصية]]
[[Ruby/String|سلسلة نصية]]
==القيمة المُعادة==
==القيمة المُعادة==
يعيد التابع <code>ungetc</code>القيمة <code>nil</code>.
==أمثلة==
==أمثلة==
مثال على استخدام التابع <code>ungetc‎</code>:
مثال على استخدام التابع <code>ungetc‎</code>:
سطر 17: سطر 23:
f.getc                    #=> "8"‎</syntaxhighlight>
f.getc                    #=> "8"‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضا==
* التابع <code>[[Ruby/IO/ungetbyte|ungetbyte]]</code>: يدفع (Pushes back)  البايتات (التي تم تمريرها كوسيط) إلى [[Ruby/IO|مجرى د/خ]] الذي استُدعي معه <code>ios</code>، بحيث ستعيدها القراءة التالية من المخزن المؤقت (buffer). لا يمكنك أن تدفع إلا بايتًا واحدا فقط قبل عملية القراءة اللاحقة (أي، لن تتمكن من قراءة إلا آخر بايت من البايتات التي دفتعها). ليس له أي تأثير مع القراءات غير التخزينية (unbuffered reads) (مثل <code>IO#sysread</code>).
* التابع <code>[[Ruby/IO/ungetbyte|ungetbyte]]</code>: يدفع (Pushes back)  البايتات (الممررة كوسيط) إلى [[Ruby/IO|مجرى د/خ]] الذي استُدعي معه
* التابع <code>[[Ruby/IO/write-i|write]]</code>: يكتب  [[Ruby/String|السلاسل النصية]] المعطاة في [[Ruby/IO|مجرى د/خ]] <code>ios</code>. يجب أن يكون المجرى مفتوحا في وضعية للكتابة. سيتم تحويل الوسائط غير النصية إلى [[Ruby/String|سلسلة نصية]] باستخدام <code>to_s</code>. يُعيد  عدد البايتات المكتوبة في الإجمال.
==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-ungetc قسم  التابع ungetc‎ في الصنف IO‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/IO.html#method-i-ungetc قسم  التابع ungetc‎ في الصنف IO‎ في توثيق روبي الرسمي.]

مراجعة 21:39، 13 نوفمبر 2018

يدفع (Pushes back) التابع ungetc حرفا واحدا (المُمرر كوسيط) في مجرى د/خ الذي استُدعي معه، بحيث تعيده القراءة التالية من المخزن المؤقت (buffer).

لا يمكنك أن تدفع إلا حرفا واحدا فقط قبل عملية القراءة اللاحقة (أي، لن تتمكن من قراءة إلا آخر حرف من الحروف التي دفتعها).

ليس للتابع ungetc أي تأثير مع القراءات غير التخزينية (unbuffered reads) (مثل sysread).

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

ungetc(string) nil

المعاملات

string‎

سلسلة نصية

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

يعيد التابع ungetcالقيمة nil.

أمثلة

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

f = File.new("testfile")   #=> #<File:testfile>
c = f.getc                 #=> "8"
f.ungetc(c)                #=> nil
f.getc                     #=> "8"‎

انظر أيضا

  • التابع ungetbyte: يدفع (Pushes back) البايتات (الممررة كوسيط) إلى مجرى د/خ الذي استُدعي معه

مصادر