السلطان
  1. الرئيسية
  2. الأمثلة
  3. الإدخال والإخراج

تخزين كتابات صغيرة كثيرة ثم إفراغها دفعة واحدة

io/buffered_output.sn
// تخزين كتابات صغيرة كثيرة ثم إفراغها دفعة واحدة.
استورد std.io.buffered_writer;
استورد std.text.from_bytes;
استورد std.text.number;

عرف الرئيسية(): عدد {
    دع كاتب: متغير كاتب_مخزن = أنشئ_كاتبا_مخزنا(256);
    دع ف: متغير عدد = 1;
    طالما (ف <= 3) {
        دع السطر: متجه ط8 = بايتات_من_نص(عدد_إلى_نص(ف));
        اكتب_مخزنا(&متغير كاتب, &السطر);
        دع سطر_جديد: متجه ط8 = [10];
        اكتب_مخزنا(&متغير كاتب, &سطر_جديد);
        ف := ف + 1;
    }
    طابق أفرغ_الكاتب_المخزن(&متغير كاتب) مع
    | نتيجة.نجح(_) -> { }
    | نتيجة.خطأ(الرمز) -> { أرجع الرمز; };
    أرجع 0;
}

التشغيل

بالمفسر، دون ترجمة:

./build/sultanc run examples/ar/io/buffered_output.sn

أو ترجمه إلى ملف تنفيذي:

./build/sultanc examples/ar/io/buffered_output.sn -o build/example && ./build/example

المصدر على GitHub   كل الأمثلة