اجرای مجدددر++c

pa_darya

Member
با سلام فرض کنيد يک بازی در c++نوشتيم اگر بخواهم در اجرا بيش از يک بار اجرايش کنيم چه کار بايد کرد؟
کلآ در c++ وقتی يک بار برنامه را اجرا می کنيم برای اجرای مجدد بايد فايل اجرايی را ببنديم و دوباره run کنيم
در c++ ميشه راهنماييم کنيد که چه کدی به آن اضافه کنم؟
 

emad_67

Member
برای اجرای مججد میتونی بسته به کاری که میخوای بکنی مثلا از حلقه ها استفاده کنی. میتونی از دستور goto هم برای انتقال اجرای برنامه به ابتدای اون استفاده کنی. البته الان همه جا می گن از goto استفاده نکنید ولی خوب من در بعضی جاها به مشکلاتی برخوردم که با حلقه نمیشد اونا رو رفع کرد.
 

saalek110

Well-Known Member
به نقل از:
http://forum.persiantools.com/showpost.php?p=487270&postcount=52

من تابحال از قالب زير استفاده مي كردم براي نوشتن برنامه ها:

کد:
#include <conio.h>		
#include <iostream.h>				
					

void main()						
{		
clrscr();

 // ----------- shoroe ghaaleb -----------------
 

cout<<"barnameh"<<endl;


 // ----------- entehaye ghaaleb ---------------
	getch();				
}

همان طور كه قبلا توضيح داده بوديم 2 header لازم است براي دستوراتي كه در اين قالب وجود دارد. و وقتي دستوراتي داخل قالب اضافه بشه، تبعا header ها افزايش ميابد. دستور clrscr(); براي پاك كردن صفحه نمايش است و دستور getch(); منتظر گرفتن يك كليد مي ماند. اين دستور براي اين اينجا گذاشته شده كه وقتي برنامه خاتمه يافت ، تا دكمه اي را نزده ايم ، از حالت اجرا خارج نشود و فرصت داشته باشيم كه نتيجه كار را ببينيم. البته تمام اين مطالب قبلا گفته شده بود. ولي حالا من براي راحتي خودم و شما مي خواهم قالب جديدي را بكار برم.

کد:
#include <conio.h>		
#include <iostream.h>				
					

void main()						
{		
clrscr();
 char c ;
 menu:
 // ----------- shoroe ghaaleb -----------------
 

cout<<"barnameh"<<endl;


 // ----------- entehaye ghaaleb -----------------
    cout<<"end of program--x for exit--any key for repeat"<<endl;
	c=getch();	
 if(c != 'x') goto menu;				
}

در اين قالب ، ابتدا با دستور char c ; يك متغير تعريف كرده ايم. و اين متغير در c=getch(); كارش نگهداري كليدي است كه كاربر مي زند.
اگر كاربر كليد x را بزند كاري صورت نمي گيرد و برنامه به انتها مي رود و خاتمه مي يابد ولي با زدن كليدهاي ديگر ، با دستور goto به بالاي برنامه بر مي گردد و از نو اجرا مي شود. اين كار براي اين خوبه كه مي توانيم برنامه خود را بدون خروج از برنامه و نياز به اجراي مجدد ، بارها چك كنيم. من برچسب menu: را بعد clrscr(); گذاشتم تا نتايج تست هاي قبلي پاك نشود و مقايسه كنيم اجراهاي متوالي را .
 

جدیدترین ارسال ها

بالا