السلام عليكم
اريد كود او دالة لمسح الشاشة على C++
وشكررررررررر
لو حتستخدم مترجم 16 بيت يعني زي TC أو BC
ممكن تستخدم الكود ده
#define WHITE_SPC 0x0720
#define VIDEO_RAM 0xB8000000
void Clear()
{
int i=0;
int far * vidmem= (int far *) VIDEO_RAM;
while( i < 80*25 ) *(vidmem+i++)= (int far) WHITE_SPC;
}مش حينفع يشتغل على نظام 32 بيت علشان الزاكره محميه من النظام
شكرر
انا اريد دالة بسيطة او كود في FUNCTION يتم استدعائه وقت الحاجة
في PASCALمتلا كود المسح
CLR,SCR;
مع استخدام مكتبة خاصة FDYLE
وشكر

MNFayyad
clrscr()
في مكتبة
conio.h
البرمجة بلغة سي++ مرتبطة بالمنصة التي تبرمج لها.
لهذا يفضل دائما استعمال محارف الخروج Escape Sequences مثل n\ لسطر جديد وt\ للحصول على Tabulation و هكذا.
هذه لائحة منها:
\n Newline \t Horizontal Tab \v Vertical Tab \b Backspace \r Carriage Return \f Form feed \a Audible Alert (bell) \\ Backslash \? Question mark \' Single quote \" Double quote \000 Oct - No one uses Octal unless they have an ICL background... \xhh Hex number
هذه المحارف هي محارف خاصة غير مطبوعة و هي جد مرتبطة بنظام التشغيل الذي تبرمج له.
إذا كنت في منصة MS-Dos يمكنك مسح كافة الشاشة باستعمال هذا الكود الذي يرسل محرف الخروج ANSI escape sequence :
printf("\033[2J");غير أن ليست كل نظم التشغيل تعتمد Ainsi , في منصة ويندوز Win32 فإن النظام لا يوفر دالة Api لمسح الشاشة .
ولهذا يفضل استعمال Shell فهي أسلم و تعمل لكل نظام على ما أعتقد.
يمكنك استعمال دالة النظام لمسح الشاشة في كل المنصات:
#include <stdlib.h>
void main()
{
system("cls");
}مجموعة من الكومبايلرات توفر دالة مثل التي ذكرها لك الأخ Asm4all لكن ليست جميعها فستجدها في كوممايلر لشركة بورلاند لكن لن تجدها في Vc++.
و الله أعلم.
سأتغيب عن المنتدى وستكون لي زيارات خفيفة بين الحين و الحين
يا صاحب الهم إن الهم منفرج.....................أبشر بخير فإن الفارج الله.
اليأس يقطع أحيانا بصاحبه..........................لا تيأس فإن الكافي الله.
الله يحدث بعد العسر ميسرة.........................لا تفزعن فإن الصانع الله.
إذا بليت فثق بالله وارض به...................فإن الذي يكشف البلوى هو الله.
و الله ما لك غير الله من أحد.......................فحسبك الله في كل لك الله
أخوكم مراد
هذا الموضوع مغلق.