نمایش نتایج 1 تا 2 از 2

نام تاپیک: خطای undefined symbol _main in module c0.ASM در turboC++‎3

  1. #1

    Question خطای undefined symbol _main in module c0.ASM در turboC++‎3

    سلام.
    #include <dos.h>
    void palette(int pnum)
    {
    union REGS r ;
    r.h.bh = 1 ; /* code for mode 4 */
    r.h.bl = pnum ;
    r.h.ah = 0xb ;
    int86(0x10, &r, &r) ;
    }


    چرا برنامه ی بالا در کمایل هیچ خطایی نمیدهد ولی در لینکر خطای زیر را میدهد؟
    undefined symbol _main in module c0.ASM
    Screenshot (152).jpgScreenshot (153).jpgScreenshot (154).jpgScreenshot (155).jpg

  2. #2

    نقل قول: خطای undefined symbol _main in module c0.ASM در turboC++‎3

    نقل قول نوشته شده توسط iirannn مشاهده تاپیک
    سلام.
    #include <dos.h>
    void palette(int pnum)
    {
    union REGS r ;
    r.h.bh = 1 ; /* code for mode 4 */
    r.h.bl = pnum ;
    r.h.ah = 0xb ;
    int86(0x10, &r, &r) ;
    }


    چرا برنامه ی بالا در کمایل هیچ خطایی نمیدهد ولی در لینکر خطای زیر را میدهد؟
    undefined symbol _main in module c0.ASM
    چون کد ایرادی نداره، اما لینکر برای ساختن فایل اجرایی exe دنبال یک تعریف برای main function میگرده که چون همچین تابعی ندارید پیداش نمی کنه.
    دقت کنید که اسم فایل میتونه هر چیزی باشه، تاثیر نداره، اینکه اسم فایلی main().c باشه ارتباطی با اینکه تابع ()main ای تعریف کرده باشید یا نکرده باشید نداره.
    وقتی اون فایل exe اجرا میشه باید یک روال آغازین رو اجرا کنه، مثلا در ++C یک ()int main ای هست که تابع آغازین برنامه است. که باید کدش رو بنویسید.
    اون palette رو نوشته اید ولی خود به خود که فراخوانی نمیشه. باید در کدی مثلا داخل ()int main ازش استفاده کنید تا فراخوانی بشه.
    تصور کنید که این فایل اجرایی exe شروع به اجرا کنه، با اجرای چه متدی باید شروع کنه؟ با اجرای palette که شروع نمی کنه، یک main میخواد.

تاپیک های مشابه

  1. تفاوت بین Class Module و Module
    نوشته شده توسط Mehr@ban در بخش Access
    پاسخ: 4
    آخرین پست: یک شنبه 12 شهریور 1396, 17:20 عصر
  2. سوال: Decimal symbol | get decimal symbol windows به دست آوردن با سی شارپ
    نوشته شده توسط moslem_f در بخش C#‎‎
    پاسخ: 7
    آخرین پست: دوشنبه 28 مرداد 1392, 23:06 عصر
  3. پاک کردن قسمت خاصی از صفحه((1 با 2 خط)) در turboC++‎‎‎
    نوشته شده توسط alieblice در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 1
    آخرین پست: چهارشنبه 16 آذر 1390, 14:26 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •