دانلود مقاله در مورد زبان برنامه نویسی C

Word 79 KB 17599 26
مشخص نشده مشخص نشده کامپیوتر - IT
قیمت قدیم:۱۶,۰۰۰ تومان
قیمت: ۱۲,۸۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • این ضمیمه به معرفی اجمالی دستورات ANSI C اختصاص دارد.

    هدف از ارائه این ضمیمه، دو مسأله می باشد.

    نخست آنکه کمکی هر چند کوچک به یادگیری دستورات ANSI C برای کسانی که آشنایی مختصری با این دستورات دارند باشد.

    دوم آنکه خلاصه ای از این دستورات در کنار کامپایلر Coodevison AVR موجود باشد تا خواننده بتواند در مواقع ضروری به جای استفاده از کُتب مرجع، از همین کتاب برای رفع مشکلات خود در زمینه دستورات ANSI C سود بَرد.


    عملگرها
    در این بخش به بررسی مختصر تمامی عملگرهای موجود در زبان C می پردازیم.
    چنانچه دو عملگر با هم بکار روند، ابتدا آنکه تقدّم بالاتری دارد انجام می شود و سپس عملگر بعدی اجرا می شود مگر آنکه این دو توسط پرانتز از یکدیگر جدا شده باشند.

    در زیر انواع عملگرها برحسب اولویّت بیان می شوند:
    عملگر شرطی ?

    :
    از این عملگر معمولاً برای نسبت دهی شرطی بکار می رود.

    بعنوان مثال عبارت زیر باعث می شود که اگر حاصل (a>b) درست باشد، مقدار max برابر a و در غیر اینصورت برابر b باشد:
    max = (a>b) ?

    a:b
    عملگر کاما ً , ً
    در ادامه با توضیح دستورات C با موارد کاربرد این عملگر آشنا خواهید شد.


    متغیرها
    تعریف متغیرها
    برای معرفی یک متغیر، از قالب بندی زیر استفاده می شود:
    data – type verialbe_list;
    «مثال»
    char a,b;
    - data – type : مشخص کننده نوع داده می باشد که می تواند یکی از انواع char ، int ، float short in ، long int و double باشد که در زیر به توضیح مختصر هر یک از انواع آنها می پردازیم:
    - char : نشان دهنده آن است که متغیر از نوع کاراکتر و در محدوده اعداد 128- تا 127+ می باشد.


    - in و short int : هر دو نوع داده، نشان دهنده آن هستند که متغیر از نوع عدد صحیح و در محدوده اعداد 32768- تا 32767+ می باشند.
    - long int : نشان دهنده آن است که متغیر از نوع عدد صحیح بلند و در محدوده اعداد 2147483648- تا 2147483647+ می باشد.


    - float و double : هر دو نوع داده، نشان دهنده آن هستند که متغیر از نوع عدد اعشاری و مقدار تقریبی قدر مطلق آن در محدوده اعداد (37-10 × 43/8 تا 1038 × 37/3) می باشند.
    با قرار دادن کلمه کلیدی unsigned قبل از هر یک از انواع داده فوق، نوع داده بدون علامت می شود و محدوده عدد مثبت آن تا دو برابر بعلاوه یک، افزایش می یابد.
    در زمان تعریف یک متغیر می توان آنرا مقداردهی اولیه نیز نمود.

    مثال زیر نمونه ای از این مطلب را نشان می دهد:
    char a=2 , b=3;
    کلمات کلیدی const و volatile
    می توان بهنگام تعریف یک متغیر، پیش از نوع داده data-type از کلمات کلیدی const و volatilc استفاده کرد، که توضیح آن ها در زیر آورده شده است:
    const : این کلمه کلیدی باعث می شود تا تغییر محتوای متغیری که به این شکل تعریف شده است، در برنامه غیرممکن باشد.
    Volatile: این کلمه کلیدی برای متغیرهایی که امکان تغییر آنها بدون اطلاع برنامه وجود دارد، بکار می رود.


    کلاس ذخیره سازی متغیرها
    در تعریف یک متغیر، می توان کلاس ذخیره سازی آنرا قبل از data-type معین کرد.

    بدین ترتیب شکل کلی تعریف متغیر بصورت زیر می باشد:
    variable_list;
    «مثال»
    static int a,b,c;
    می تواند یکی از انواع extern, static, auto و register باشد که توضیح هر یک از آنها بصورت زیر می باشد:
    auto : نشان دهنده آنست که متغیر از نوع خودکار می باشد.

    این نوع متغیر فقط در داخل تابع شناخته شده است و با برگشت از تابع مقدار آن از بین می رود.

    معمولاً این کلمه کلیدی در اعلان متغیر ذکر نمی شود زیرا چنانچه متغیری در داخل تابع بدون ذکر کلاس ذخیره سازی اعلان شود، کامپایلر آن را از نوع خودکار فرض خواهد کرد.

    static : نشان دهنده آنست که متغیر از نوع ایستا می باشد.

    چنانچه این اعلان در داخل تابع انجام شود، تابع دوباره فراخوانده شود، متغیر مقدار قبلی را داراست و چنانچه این اعلان در خارج از تابع انجام شود، متغیر فقط در کامپایل جاری شناخته شده است و از این متغیر نمی توان در فایل های دیگر (در برنامه های چند فایلی) استفاده کرد.

    extern : نشان دهنده آنست که تعریف اصلی (اختصاص حافظه) و مقدار اولیه متغیر، در فایل دیگری انجام شده است و در فایل جاری، می توان از آن متغیر استفاده کرد.

    register : نشان دهنده آنست که مکان متغیر در یکی از رجیسترهای میکروکنترلر می باشد.

    آرایه ها و رشته ها یک آرایه مجموعه ای از متغیرهای بهم مرتبط است که بوسیله یک نام مشترک، مورد رجوع قرار می گیرند.

    آرایه ها می توانند از یک تا چندین بُعد را دارا باشند.

    نحوه تعریف یک آرایه یک بُعدی بصورت زیر می باشد: data – type var_name [size]; «مثال» char A[20]; در این تعریف data-type نوع داده، var_name نام آرایه مورد نظر و size تعداد عناصر این آرایه می باشد.

    برای دسترسی به عنصر یک آرایه از شماره آن عنصر به عنوان زیرنویس آن آرایه استفاده می شود.

    زیرنویس یک آرایه با صفر شروع می شود.

    بطور نمونه در مثال فوق آرایه A دارای عناصر A[0] تا A[19] می باشد.

    علاوه بر آرایه یک بُعدی می توان آرایه هایی با دو یا چند بُعد ساخت.

    نحوه تعریف یک آرایه چند بُعدی بصورت زیر می باشد: data – type var_name [size_1] [size_2] … [size_N]; «مثال» char A[20] [10] ; از متداول ترین کاربرد آرایه های یک بُعدی، تعریف رشته ها می باشد.

    یک رشته در حقیقت آرایه ای از کاراکترها می باشد که به یک کاراکتر تهی (NULL) ختم می شود، کاراکتر تهی نشان دهنده پایان رشته می باشد.

    بعنوان مثال آرایه زیر می تواند رشته ای با طول حداکثر 10 کاراکتر را در خود نگه دارد که عضو یازدهم آرایه، کاراکتر تهی می باشد: char name [11] ; مقداردهی اولیه آرایه ها: همانند دیگر متغیرها، آرایه ها را نیز می توان در هنگام تعریف مقداردهی اولیه نمود و برای این منظور از قالب بندی زیر استفاده می شود.

    data – type array_name={value_list}; «مثال» int A [5]={1, 4, 7, 3, 9}; cahr b [3] [3]={‘a’ , ‘m’ , ‘n’ , ‘o’ , ‘p’ , ‘q’ , ‘r’ , ‘s’ , ‘t’}; در این قالب بندی value_list فهرستی از مقادیری است که به وسیله کاما از هم جدا می شوند.

    در چنین فهرستی، اولین مقدار ثابت در اولین مکان آراینه قرار می گیرد و دومین مقدار ثابت در دومین مکان آرایه و … برای مقداردهی اولیه آرایه های رشته ای، می توان از روش های ساده تری مطابق آنچه در زیر آورده شده است، استفاده کرد: char name [ ] = "TEXT"; اشاره گرها (Pointers) اشاره گر، متغیری است که آدرس حافظه یک شیء را در خود نگاه می دارد.

    مثلاً اگر متغیری با نام a حاوی آدرس متغیر دیگری با نام b باشد، در اینصورت گفته می شود که a به b اشاره می کند.

    شکل کلی تعریف یک متغیر اشاره گر بصورت زیر می باشد: data – type *var_name; «مثال» int *p; در این تعریف data – type نوع داده ای است که اشاره گر به آن اشاره می کند.

    دو نوع عملگر که مخصوص کار با اشاره گرها می باشند، عبارتند از عملگر آدرس "&" و عملگر محتوای آدرس " * ".

    مثال زیر نمونه ای از کاربرد این عملگرها را نشان می دهد: main ( ) { int *a, b, c; b = 100 ; a = &b; c = *a } در این مثال a حاوی آدرس b خواهد بود، یعنی اگر b در خانه 2000H حافظه باشد، مقدار a برابر 2000H خواهد بود.

    از طرفی c برابر محتوای آدرس ذکر شده در a یعنی محتوای آدرس 2000H می باشد.

    لذا مقدار c برابر همان مقدار b یا 100 خواهد بود.

    اشاره گرهای void : از void برای تعریف اشاره گرهای خالی استفاده می شود.

    یک اشاره گر خالی به هر نوع شیئی می تواند اشاره گر باشد.

    از محاسن این اشاره گر آنست که می توان هر نوع اشاره گری را (حتی اگر با هم ناسازگار باشند) به آن نسبت داد.

    مثال زیر نمونه ای از این مطلب را نشان می دهد:‌ int *p; void *v; v = p; در مثال فوق اگر اشاره گر v نوع دیگری غیر از int و void می بود، کامپایلر تولید خطا می کرد.

    اشاره گر NULL : یک اشاره گر NULL دارای مقدار تهی (یعنی صفر) می باشد و فرض بر آنست که این اشاره گر به هیچ چیزی اشاره نمی کند.

    برای ساخت یک اشاره گر تهی، باید به آن، مقدار صفر را نسبت داد.

    ماکروی NULL در stdlib.h به این منظور تعبیه شده است.

    این ماکرو معادل ((void*)0) می باشد.

    مثال زیر نمونه ای از این نسبت دهی را نشان می دهد: int *ptr = NULL; از اشاره گرها می توان برای ارسال داده ها به توابع و برگرداندن آنها از توابع نیز استفاده کرد.

    این روش معمولاً‌ برای ارسال بلوکی از داده ها (مانند آرایه ها و ساختارها) به تابع و یا برگرداندن آنها از تابع بکار می رود.

    دستورات کنترلی دستور if – else : شکل کلّی استفاده از دستور if – else بصورت زیر می باشد: if (expression) statement1 else statement2 «مثال» if (num abs_num=-num; else abs_num=num; در قالب بندی فوق، چنانچه مقدار برگشتی expression درست باشد (یعنی 1 منطقی)، statement1 اجرا می شود و در غیر اینصورت (مقدار برگشتی، 0 منطقی باشد)، statement2 اجرا می شود.

    حلقه while : شکل کلی ایجاد یک حلقه while بصورت زیر می باشد:‌ while (expression) statement «مثال» while (i>0) { i--; A[i]=i; } در قالب بندی فوق، حلقه while تا زمانی که expression درست باشد، به تکرار statement می پردازد.

    تذکّر: مقدار عبارت expression در ابتدای حلقه امتحان می شود و اگر در همان ابتدا نادرست باشد، این حلقه حتی برای یکبار هم اجرا نخواهد شد.

    حلقه do-while : شکل کلی ایجاد یک حلقه do-while بصورت زیر می باشد: do statement while (expression) «مثال» do { i--; A [i] = i ; } while (i>0) این حلقه، دستور یا دستورات داخل خود را تا زمانیکه expression درست باشد (مقدار برگشتی آن مخالف صفر باشد) تکرار می کند.

    وقتی این عبارت نادرست شود، این حلقه متوقف می شود.

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

    حلقه for : شکل کلی ایجاد یک حلقه for بصورت زیر می باشد:‌ for (exp 1; exp2 ; exp3) statement for (i = 0; i A [i] = i; B [i] = 2*i ; } در یک حلقه for عبارت exp1 فقط برای یکبار و در ابتدای حلقه اجرا می شود.

    این عبارت معمولاً حاوی مقداردهی اولیه متغیرهای حلقه می باشد.

    پس از آن exp2 امتحان می شود، اگر عبارت exp2 درست باشد (مقدار برگشتی آن مخالف صفر باشد) تکرار حلقه با اجرای دستورات موجود در بخش statement ادامه می یابد و در غیر اینصورت از حلقه خارج می شود.

    پس از هر بار تکرار حلقه، عبارت exp3 محاسبه می شود، این عبارت معمولاً وظیفه افزایش یا کاهش شمارنده‌ حلقه را بر عهده دارد.

    دستور goto : شکل کلی ایجاد یک دستور goto بصورت زیر می باشد: goto identifier; «مثال» loop: … goto loop; از این دستور برای انتقال بدون شرط کنترل به یک برچسب محلی که توسط شناسه مشخص شده، استفاده می شود.

    دستور break : این دستور برای خارج شدن بدون شرط از حلقه، مورد استفاده قرار می گیرد.

    هرگاه برنامه به دستور break برسد از حلقه خارج شده و ادامه برنامه از اولین دستور بعد از حلقه دنبال می شود.

    دستور continue: این دستور باعث می شود که با صرف نظر کردن از دستورات باقیمانده حلقه، دور بعدی حلقه انجام شود.

    بطور نمونه در مثال زیر دستور i++ هیچگاه انجام نمی شود و در نتیجه این حلقه هیچگاه پایان نمی یابد.

    «مثال» i = 0 ; while (i continue; i++; } دستور switch : شکل کلی ایجاد یک دستور switch بصورت زیر می باشد: switch (expression) { case constant1: statement sequence break; case constant2 : statement sequence break; … default: atatement sequence } این دستور برای انتخاب یکی از چند گزینه ممکن در اجرای برنامه بکار می رود.

    نحوه کار آن به این صورت است که مقدار عبارت expression متوالیاً با فهرستی از ثابتهای صحیح یا کاراکتری مقایسه می شود.

    زمانیکه مورد انطباقی یافت شود، دستور یا دستورهای مربوط به آن انطباق اجرا می شود و اگر هیچ انطباقی یافت نشد، دستورات مربوط به قسمت default اجرا می شود.

    بکار بردن default دلخواه می باشد و اگر این قسمت استفاده نشود، در اینصورت با یافت نشدن مورد انطباق هیچ کاری صورت نمی گیرد.

    از

کلمات کلیدی: C - زبان برنامه نویسی C

تحقیق دانش آموزی در مورد دانلود مقاله در مورد زبان برنامه نویسی C, مقاله دانشجویی با موضوع دانلود مقاله در مورد زبان برنامه نویسی C, پروژه دانشجویی درباره دانلود مقاله در مورد زبان برنامه نویسی C

(تغییر مسیر از زبان برنامه‌نویسی C) پرش به: ناوبری, جستجو زبان برنامه‌نویسی C، زبانی همه منظوره، ساخت یافته و روندگرا می باشد که در سال ۱۹۷۲ توسط دنیس ریچی در آزمایشگاه بل ساخته شد.[۱] تاریخچه برای بررسی تاریخچه زبان C باید به سال ۱۹۶۷ بازگردیم که مارتین ریچاردز زبان BCPL را برای نوشتن نرم افزارهای سیستم عامل و کامپایلر در دانشگاه کمبریج ابداع کرد. سپس در سال ۱۹۷۰ کن تامپسون ...

++C ++C یک زبان برنامه نویسی همه منظوره و سطح بالا است. ++C یک زبان چندرگه است که از برنامه نویسی رویه‌ای، تجرید داده‌ها و برنامه نویسی شئ گرا پشتیبانی می‌‌کند. ++C به همراه جد خود C از پرطرفدارترین زبانهای برنامه نویسی تجاری هستند. زبان برنامه‌نویسی ++C یک زبان برنامه‌نویسی کامپیوتری سطح بالا و عمومی (با کاربرد های متنوع) می باشد. این زبان از تمام روش های مرسوم برنامه نویسی از ...

بسیاری از زبان‌های برنامه‌نویسی امروزی از این قرارند: C++,C ، Javad , C# , COBOL , Microsoft Visual Basic و غیره. با وجود این همه زبان، یک مهندس نرم‌افزار چگونه تصمیم می‌گیرد که کدامیک از آنها را برای یک پروژه استفاده کند. گاهی اوقات، یک زبان به این دلیل انتخاب می‌شود که تولید کنندگان یک شرکت کار با آن را دوست دارند و یا می‌شناسند، که این می‌تواند یک دلیل منطقی باشد. گاهی اوقات ...

اسکریپت چیست ؟ اسکریپت زبان های اسکریپتی برای ارائه تحولات و ایجاد پویایی در صفحات وب ایجاد شدند . این زبان ها از روی زبان های برنامه نویسی ساخته شدند و بهمین دلیل دارای تشابه بسیاری با هم هستند . این زبان ها در اصل نمونه کوچک شده زبان های مادر خود هستند . تعدادی از فرمان ها و امکانات زبان های بزرگ در این زبان ها حذف شده اند . مثلا امکان نوشتن فایل یا پاک کردن فایل ها برروی ...

Microsoft visual stadio . net Visual stadio . net ( vs . net ) جدیدترین ابزار برنامه سازی شرکت مایکروسافت و شکل گرفته بر اساس فناوری نوین . net است . فناوری . net رویکرد جدید مایکروسافت برای تولید نرم افزار است و بر تمام برنامه ریزیهای مایکروسافت برای آینده بر مبنای آن خواهد بود . موفقیت . net تا به آن حد بود که شرکتهای دیگری مثل بورلند نیز به آن روی آورده اند . از بعد دیگر می ...

از آنجائیکه oracle 8 ساخته شده و به سرعت از آن استفاده موثر میشود، User ها و گسترش دهندگان آن باید از زبان یکسانی برخوردار باشند و فهم عمیقی و هم در تجارت و هم ابزارهای oracle داشته باشند. این روش جدیدی برای پیشرفت است. به طور تاریخی، تحلیل گران سیستم نیازهای تجاری را مورد بررسی قرار می دهند و وسایلی را ساختند که آن نیازها را برطرف کند. User ها فقط در توضیح تجارت و شاید در مورد ...

بخش اول زبان c یک زبان سطح میانی است . کلمات کلیدی شاخص در این زبان عبارتند از auto do goto signed void break double if sizeof while case else int static char enum long switch const extem register typedef continue float returm union default for short unsigned انواع داده در c : زبان c شامل شش نوع اصلی می باشد که عبارتند از void ,enum double , float , int , char. در زبان c برخی از ...

امروزه استاندارد های خاص بیت المللی مثل IEC 1131 برای برنامه نویسی و کار با PLC ها وجود دارد که اغلب شرکت های سازنده و طراح PLC که معمولا نرم افزارهای مخصوص PLC های خودشان را تولید می کنند. از این روشهای استاندارد شده پیروی می کنند و فقط تفاوتهای جزیی در نرم افزارهای آنها به چشم می خورد که اکثر آنها هم در اثر تفاوتهای سخت افزاری سیستم های طراحی شده بوجود می آیند.اما در این بخش ...

فصل اول : آشنایی با Access تاریخچه Access : در سال 1992 ، Microsoft Access به عنوان یک DBMS عرضه شد و در طی سالهای متمادی ، در رده خود به صدر رسید . Access به عنوان بخشی از مجموعه برنامه های معروف Microsoft Access روزانه توسط میلیون ها نفر استفاده می شود. از همان ابتدا Access به تدریج توسعه یافت و به برنامه ای کارآمد با کاربردی آسان مبدل شد. نگارش های اخیر آن در حالی که هم چنان ...

تعیین انتهای خط: انتهای خط در فایل های متنی توسط کلید RETURN مشخص میشود ولی در فایل های باینری انتهای خط نداریم. اطلاعات بصورت رکورد کنار هم قرار میگرند تا فایل تمام شود. ج: تعیین انتهای فایل: در فایل های متنی توسط دو حر ف TA (در مبنای 16 (دکمه های CTRL+Z) انتهای فایل مشخص میشود. در فایل های باینری تعداد رکورد (که توسط سیستم نگهداری میشود) انتهای فایل مشخص میشود. باز کردن فایل ...

ثبت سفارش