سلام دوستان. یه مشکلی دارم. :sad:
برنامه زیر رو که با عنوان "چاپ لیست برنامه" داخل یه کتاب بود با Borland Cpp کامپایل کردم و هیچ خطایی نداشت. قبل از هر سوالی اول توضیح برنامه و کدش رو کامل میزارم و بعد سوالم رو میپرسم.
================================================== ================================================== ===
توضیحات: برنامه ای را که ملاحظه میکنید و Print_It نام دارد، لیست برنامه را به همراه شماره خطوط (شبیه آنچه در متن کتب آموزشی برنامه نویسی و یا خود ادیتور کامپایلر مشاهده میکنید،) چاپ میکند.
نحوه استفاده از این برنامه بصورت روبرو است:
آنچه چاپ خواهد شد همان دستورات فایل filename.ext (به عنوان مثال) بعلاوه شماره خطوط می باشد.
کد برنامه:
>> حالا سوال من اینجاست، که با استفاده از این برنامه چجوری میتونم کاری رو انجام میده (یعنی نمایش متن یه برنامه دیگه روی صفحه Command Prompt )، رو انجام بدم؟ به عبارت دقیقتر وقتی فایل exe ای که در نتیجه کامپایل همین برنامه ای که کدش رو قرار دادم رو اجرا میکنم، هیچ چیزی مشاهده نمیکنم و یه لحظه صفحه داس میاد و میره. البته این مورد رو مثل وقتایی که این اشکال پیش میاد میخواستم با include کردن هدرفایل conio.h و اضافه کردن () getch قبل از دستور return حل کنم تا صفحه Command Prompt ثابت بمونه که بازم نشد. (در صورتی که برنامه هایی که اینجوری بودن و این مشکل رو دارن و این کار رو باهاشون میکنم حل میشه.) :cry:
به طور کلی هم میخوام بدونم چجوری باید با این برنامه کار کرد. یعنی اون دستور
رو کجا باید وارد کنم؟ :question:
برنامه زیر رو که با عنوان "چاپ لیست برنامه" داخل یه کتاب بود با Borland Cpp کامپایل کردم و هیچ خطایی نداشت. قبل از هر سوالی اول توضیح برنامه و کدش رو کامل میزارم و بعد سوالم رو میپرسم.
================================================== ================================================== ===
توضیحات: برنامه ای را که ملاحظه میکنید و Print_It نام دارد، لیست برنامه را به همراه شماره خطوط (شبیه آنچه در متن کتب آموزشی برنامه نویسی و یا خود ادیتور کامپایلر مشاهده میکنید،) چاپ میکند.
نحوه استفاده از این برنامه بصورت روبرو است:
کد:
print_it filename.ext
کد برنامه:
کد:
/*PRINT_IT.c--This program prints out a listing with line numbers! */ #include <stdio.h> #include <stdlib.h> #include <conio.h> void do_heading(char *filename); int line, page; int main( int argv, char *argc[] ) { char buffer[256]; FILE *fp; if( argv < 2 ) { fprintf(stderr, "\nProper Usage is: "); fprintf(stderr, "\n\nPRINT_IT filename.ext\n" ); exit(1); } if (( fp = fopen (argc[1], "r")) == NULL ) { fprintf (stderr, "Error Opening file, %s!" , argc[1] ); exit(1); } page=0; line=1 ; do_heading (argc[1]); while (fgets (buffer, 256, fp)!=NULL) { if (line % 55==0) do_heading (argc [1]); fprintf (stdout, "%4d:\t%s", line++, buffer); } fprintf (stdout, "\f"); fclose(fp); getch (); return 0; } void do_heading (char *filename) { page++; if (page>1) fprintf (stdout, "\f"); fprintf (stdout, "Page: %d, %s\n\n", page, filename); }
>> حالا سوال من اینجاست، که با استفاده از این برنامه چجوری میتونم کاری رو انجام میده (یعنی نمایش متن یه برنامه دیگه روی صفحه Command Prompt )، رو انجام بدم؟ به عبارت دقیقتر وقتی فایل exe ای که در نتیجه کامپایل همین برنامه ای که کدش رو قرار دادم رو اجرا میکنم، هیچ چیزی مشاهده نمیکنم و یه لحظه صفحه داس میاد و میره. البته این مورد رو مثل وقتایی که این اشکال پیش میاد میخواستم با include کردن هدرفایل conio.h و اضافه کردن () getch قبل از دستور return حل کنم تا صفحه Command Prompt ثابت بمونه که بازم نشد. (در صورتی که برنامه هایی که اینجوری بودن و این مشکل رو دارن و این کار رو باهاشون میکنم حل میشه.) :cry:
به طور کلی هم میخوام بدونم چجوری باید با این برنامه کار کرد. یعنی اون دستور
کد:
print_it filename.ext
دیدگاه