کامپایل و اجرای برنامه

کامپایل و اجرای برنامه در زبان C

برای اجرای یک برنامه نوشته‌شده با زبان C، ابتدا باید کد منبع آن به زبان قابل فهم برای کامپیوتر تبدیل شود. این فرایند کامپایل نام دارد و پس از آن می‌توان برنامه را اجرا کرد و نتیجه را مشاهده کرد.

کامپایل چیست؟

کامپایل فرایندی است که طی آن، کد منبع برنامه که معمولاً در فایلی با پسوند .c نوشته شده است، توسط کامپایلر بررسی و به کد قابل اجرا یا کد میانی تبدیل می‌شود. کامپایلر خطاهای نحوی و برخی خطاهای دیگر را نیز شناسایی می‌کند.

مراحل کامپایل و اجرای برنامه

۱

نوشتن کد

برنامه را در یک ویرایشگر یا محیط توسعه نوشته و با پسوند .c ذخیره می‌کنیم.

۲

کامپایل

کامپایلر کد را بررسی می‌کند و در صورت موفقیت، مراحل تولید فایل اجرایی را انجام می‌دهد.

۳

اجرا

فایل اجرایی را اجرا می‌کنیم تا دستورات برنامه انجام شوند و خروجی نمایش داده شود.

تفاوت کامپایل و اجرا

کامپایل، کد منبع را به برنامه قابل اجرا تبدیل می‌کند؛ اما اجرا زمانی است که سیستم‌عامل برنامه را راه‌اندازی می‌کند و دستورات آن انجام می‌شوند. ممکن است برنامه بدون خطای کامپایل ساخته شود، ولی هنگام اجرا نتیجه مورد انتظار را تولید نکند.

کامپایل و اجرای برنامه با کامپایلر GCC

یکی از کامپایلرهای رایج زبان C، کامپایلر GCC است. اگر این کامپایلر روی سیستم نصب باشد، می‌توان برنامه را از طریق ترمینال یا خط فرمان کامپایل و اجرا کرد.

مثال اول: نوشتن یک برنامه ساده

کد زیر را در فایلی با نام hello.c ذخیره کنید.

کد برنامه (hello.c)
#include <stdio.h>

int main(void)
{
    printf("Hello, World!\n");
    return 0;
}
خروجی برنامه پس از اجرا
Hello, World!

مرحله اول: کامپایل برنامه

ترمینال را در پوشه‌ای که فایل hello.c قرار دارد باز کنید و دستور زیر را وارد کنید:

دستور کامپایل
gcc hello.c -o hello
خروجی معمول در صورت موفقیت

معمولاً هیچ پیامی نمایش داده نمی‌شود. اگر کامپایل موفق باشد، فایل اجرایی با نام hello ساخته می‌شود.

در این دستور:

  • gcc نام کامپایلر است.
  • hello.c فایل کد منبع برنامه است.
  • -o hello نام فایل خروجی را مشخص می‌کند.

مرحله دوم: اجرای برنامه در ویندوز

اگر در محیط ویندوز از کامپایلر GCC استفاده می‌کنید، معمولاً فایل اجرایی با پسوند .exe ساخته می‌شود. برای اجرای برنامه، دستور زیر را وارد کنید:

دستور اجرا در ویندوز
.\hello.exe
خروجی برنامه
Hello, World!

مرحله دوم: اجرای برنامه در لینوکس و macOS

در بسیاری از محیط‌های لینوکس و macOS، اگر کامپایلر GCC یا کامپایلر سازگار نصب باشد، فایل خروجی بدون پسوند ساخته می‌شود. برای اجرای آن از دستور زیر استفاده کنید:

دستور اجرا در لینوکس و macOS
./hello
خروجی برنامه
Hello, World!

نکته مهم

اگر هنگام وارد کردن دستور کامپایل، پیام خطا دریافت کردید، ابتدا مطمئن شوید کامپایلر نصب است و فایل hello.c در مسیر فعلی قرار دارد. همچنین نام فایل را دقیق وارد کنید.

کامپایل و اجرای برنامه در محیط توسعه

در محیط‌های توسعه یکپارچه مانند Code::Blocks، معمولاً لازم نیست دستورات کامپایل و اجرا را به‌صورت دستی وارد کنید. پس از نوشتن و ذخیره برنامه، می‌توانید از گزینه‌های مربوط به ساخت و اجرا استفاده کنید.

Build

کد برنامه را کامپایل می‌کند و فایل اجرایی را می‌سازد.

Run

برنامه ساخته‌شده را اجرا می‌کند.

Build and Run

در بسیاری از محیط‌ها، ابتدا برنامه را می‌سازد و سپس آن را اجرا می‌کند.

بررسی خطاهای کامپایل

اگر کد برنامه دارای خطای نحوی باشد، کامپایلر معمولاً پیام خطا نمایش می‌دهد و ممکن است فایل اجرایی ساخته نشود. برای مثال، در کد زیر علامت پایان دستور ; بعد از دستور printf وجود ندارد.

کد دارای خطا
#include <stdio.h>

int main(void)
{
    printf("Hello, World!\n")
    return 0;
}
نتیجه کامپایل

کامپایلر خطایی مرتبط با ساختار دستورها گزارش می‌کند. متن دقیق پیام به کامپایلر و نسخه آن بستگی دارد و ممکن است محل خطا را در همان خط یا خط بعدی نشان دهد.

برای رفع خطا، علامت ; را در انتهای دستور printf قرار می‌دهیم.

کد اصلاح‌شده
#include <stdio.h>

int main(void)
{
    printf("Hello, World!\n");
    return 0;
}
خروجی پس از کامپایل موفق و اجرا
Hello, World!

مثال دوم: محاسبه مجموع دو عدد

در این مثال، دو عدد در متغیرهای برنامه قرار می‌گیرند، مجموع آن‌ها محاسبه می‌شود و نتیجه در خروجی نمایش داده می‌شود.

کد برنامه (sum.c)
#include <stdio.h>

int main(void)
{
    int a = 10;
    int b = 20;
    int sum = a + b;

    printf("Sum = %d\n", sum);

    return 0;
}
خروجی برنامه
Sum = 30

برای کامپایل این برنامه، کد را در فایل sum.c ذخیره کرده و دستور زیر را اجرا کنید:

دستور کامپایل برنامه دوم
gcc sum.c -o sum
خروجی معمول در صورت موفقیت

پیام خاصی نمایش داده نمی‌شود و فایل اجرایی با نام sum یا در ویندوز معمولاً sum.exe ایجاد می‌شود.

سپس برنامه را اجرا کنید.

اجرای برنامه در ویندوز
.\sum.exe
اجرای برنامه در لینوکس و macOS
./sum
خروجی اجرای برنامه
Sum = 30

جمع‌بندی

  • کد منبع زبان C معمولاً در فایلی با پسوند .c ذخیره می‌شود.
  • کامپایلر کد را بررسی می‌کند و در صورت موفقیت، مراحل تولید فایل اجرایی را انجام می‌دهد.
  • برای کامپایل با GCC می‌توان از دستور gcc file.c -o program استفاده کرد.
  • در ویندوز معمولاً فایل اجرایی پسوند .exe دارد؛ در لینوکس و macOS این پسوند معمولاً وجود ندارد.
  • موفقیت در کامپایل لزوماً به معنای درست بودن منطق برنامه نیست؛ رفتار برنامه باید هنگام اجرا نیز بررسی شود.

تمرین

برنامه‌ای بنویسید که دو متغیر با مقادیر 15 و 25 داشته باشد، مجموع آن‌ها را محاسبه کند و نتیجه را نمایش دهد. سپس برنامه را در فایلی با پسوند .c ذخیره کنید، آن را کامپایل کرده و اجرا کنید.

💬

دیدگاه کاربران

نظر یا تجربه خود را درباره این مطلب با دیگران به اشتراک بگذارید.

💭 هنوز دیدگاهی ثبت نشده است. اولین نفری باشید که نظر خود را می‌نویسد.
✍️ ارسال دیدگاه

🔒 دیدگاه شما پس از بررسی و تأیید مدیر سایت نمایش داده خواهد شد.

ارسال نظر

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *