MENU ▽ بیلگی
آذربایجان تورکجه‌سینده بیلگی‌لر

  • آنا صفحه‌سی
  • فلسفه
  • کامپیوتر
  • بیزه گؤره
  • fopen()‎‏ و fclose()‎‏ فانکشن‌لری

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

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

    آشاغیدا filename تکین بیر فایلی fopen فانکشنی ایله اوخوماغا چالیشمیشیق:

    FILE *file_pointer;
    file_pointer = fopen(filename, mode);
    fclose(file_pointer);

    اوستده‌کی FILE کلمه‌سی اصلینده بیر نوع دئتا (ایطیلاعات) ساییلیر.

    سونرا file_pointer تکین بیر ایشاره‌چی تعریف اولونوب و سونرا ایسه اونون هانکی یئره ایشاره ائتدیگی، fopen فانکشنی ایله تعیین اولونوب‌دور.

    اونوتمامیش‌سینیزسا، ایشاره‌چیلر بیر آدرسه ایشاره ائدن واقت، بوش یازیلیرلار و اولدوز علامتی یازیلمیر، بیز ده بیر ایطیلاعات آدرسی اوچون ایشاره ائده‌رک، اولدوز علامتی یازمیریق.

    یاخشی، ایندی fopen فانکشنینده‌کی filename بیزیم قصد ائتدیگیمیز فایلین آدی و آدرسی‌دیر و بیر ایسترینگ تکین یازیلاجاق، یعنی دوبل کوت آراسیندا.

    مثلاً ‎"new file.txt"‎ تکین.

    آنجاق بئله ایسترینگ، یالنیز new file.txt تکین فایلی، پروقرامین چالیشدیغی آدرس‌ده یازاجاق و ایسته‌سک آیری آدرسی تعیین ائدک، اوندا بوتون مسیری فایلین آدی ایله بیرلیکده یازمالی‌ییق.

    مثلا بئله یازماق اولار:

    fp = fopen("/home/new file.txt" , "w");

    سونرا mode تکین آچار وار و بو دا فانکشنین نئجه چالیشماسی اوچون‌دور و ائله بو دا ایسترینگ تکین دوبل-کوت آراسیندا یازیلیر.

    آخیر مرحله‌ده ایسه فایلی باغلامالی‌ییق و بونو دا fclose فانکشنی ایله بیتیریریک.

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

    فایل اوخونا بیلمه‌سه، اوندا fopen()‎ فانکشنی NULL میقداری قایتاراجاق و بونو بیر فایلی اوخوماق اوچون یوْخلاماغا قوللانماق اولار.

    #include <stdio.h>
    int main()
    {
    FILE *fp;
    fp = fopen("new file.txt", "r");
    if (fp == NULL)
    {
    printf("File not opened!");
    }
    else
    {
    printf("File opened!");
    fclose(fp);
    }
    return 0;
    }

    گؤردوگونوز تکین فایل ایشاره‌چی‌نین میقداری NULL قایتاردیغی واقت، ۸-جی سطر ایجرا اولاجاق و میقداری اولان واقت دا ۱۲-جی سطر چالیشاجاق.

    چوخ اؤنملی بیر نوکته وار:

    پروقراما باخسانیز، fclose()‎ فانکشنی ۱۳-جو سطرده و else اوچون کروشه‌لرین آراسیندا یازیلیب‌دیر!

    سیزجه نییه بئله یازمیشیق و مثلا ۱۵-جی سطردن قاباق و return دستورالعمل‌دن قاباق fclose()‎ فانکشنی یازسایدیق، ایرادی اولاجایدی؟

    عیلت آیدین‌دیر. آچیلمایان فایلی باغلاماق اولماز، بونا گؤره ده fclose()‎ فانکشنی، یالنیز فایلی اوخویان قیسمت‌ده یازمالیسینیز. بونا گؤره ده آچیلمایان فایلین باغلانماسینا چالیشسانیز، حتما ایراد گؤره‌جکسینیز.

    البته بونو فایل ایشاره‌چینی ایشلنمه‌یه‌رک ده یازماق اولارد، یعنی یالنیز ‎fopen()‎ فانکشنی ایله بو ایشی گؤرمک اولار.