در مورد برنامه های طولانی و پیچیده که شامل چندین قسمت منطقی تقریبا مستقلی
هستند بهتر است برای هر قسمت منطقی ، برنامه ای نوشته و سپس آنها را به یکدیگر
متصل (Link) کرد .
هر یک از این قسمتها یک زیر برنامه نام دارند .
استفاده از
زیر برنامه جهت طراحی برنامه ها ، دارای مزایای زیادی است که بر اهل کامپیوتر
پوشیده نیست .
در زبانهای برنامه سازی مختلف معمولادو نوع زیربرنامه وجود دارند
و عبارتند از : ( الف ) زیر برنامه های تابع ( ب ) زیر برنامه های زیر روال ، در
زبان C فقط زیربرنامه تابع مورد استفاده قرار میگیرد.
کاری را که زیربرنامه های
زیر روال در سایر زبان های برنامه سازی انجام می دهند ، در زبان C توسط زیر
برنامه های تابع صورت می گیرد .
در اینجا منظور از زیر برنامه ، توابع هستند .
توابع در زبان C دارای ساختمان خاصی هستند که شکل (1) آن را نشان می دهد .
ؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤ |
<نوع تابع=""> <نام تابع=""> ( اسامی پارامترها ) | |
تعریف پارامترها | | { |
|
بدنه تابع | | } |
ؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤ
شکل (1) .
ساختمان توابع
در شکل (1) منظور از نوع تابع ، یکی از انواع معتبر در زبان C است که نوع
مقدار برگردانده شده توسط تابع را مشخص می کند .
تعیین نوع توابع ، اختیاری
است .
اگر تابعی تعیین نوع نگردد کامپایلر زبان C فرض می کند مقداری که توسط
تابع برگردانده می شود از نوع صحیح است .
نام تابع از قانون نامگذاری برای
متغیرهای تبعیت می کند .
اسامی پارامترها شامل متغیرهایی است که باید به تابع
منتقل کردند .
اگر تعداد پارامترها بیش از یکی باشد یا کاما از یکدیگر جدا
می شوند .
تعریف پارامترها مجموعه دستوراتی است که نوع پارامترها را تعیین
می نماید .
تعیین نوع پارامترها در حین تعریف تابع نیز امکان پذیر است .
بدنه
تابع شامل دستورالعمل هایی است که عمل تابع را مشخص می کند .
نکاتی را که باید در مورد توابع در نظر داشت عبارتند از : 1
کلیه توابع فرعی بعد از تابع اصلی (()main) تعریف می شوند .
2
اگر نوع تابعی غیراز نوع صحیح باشد، نوع آن باید در تابع فراخواننده
به کامپایلر اعلان شود .
3
برای اجرای تابع باید آنها را فراخوانی نمود ( فراخوانی توابع توسط نام
آنها انجام می شود ) .
4
همانطور که متغیرهای قابل استفاده در تابع اصلی باید در ابتدای این تابع
تعریف شوند ، متغیرهای مورد نیاز هر تابع فرعی نیز باید در ابتدای آنها تعریف
کردند .
5
تعریف یک تابع در داخل تابع دیگر امکان پذیر نیست .
ولی فراخوانی سطوح
مختلف توابع ، ممکن است .
6
توابع از نظر تعداد مقادیری که به تابع فراخواننده برمی گردانند ، به سه
دسته تقسیم می شوند .
نام>نوع> توابع و کلاسهای حافظه در مورد برنامه های طولانی و پیچیده که شامل چندین قسمت منطقی تقریبا" مستقلی هستند بهتر است برای هر قسمت منطقی ، برنامه ای نوشته و سپس آنها را به یکدیگر متصل (Link) کرد .
استفاده از زیر برنامه جهت طراحی برنامه ها ، دارای مزایای زیادی است که بر اهل کامپیوتر پوشیده نیست .
در زبانهای برنامه سازی مختلف معمولا"دو نوع زیربرنامه وجود دارند و عبارتند از : ( الف ) زیر برنامه های تابع ( ب ) زیر برنامه های زیر روال ، در زبان C فقط زیربرنامه تابع مورد استفاده قرار میگیرد.
کاری را که زیربرنامه های زیر روال در سایر زبان های برنامه سازی انجام می دهند ، در زبان C توسط زیر برنامه های تابع صورت می گیرد .
توابع در زبان C دارای ساختمان خاصی هستند که شکل (1) آن را نشان می دهد .
ؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤ | ( اسامی پارامترها ) | | تعریف پارامترها | | { | | بدنه تابع | | } | ؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤ شکل (1) .
ساختمان توابع در شکل (1) منظور از نوع تابع ، یکی از انواع معتبر در زبان C است که نوع مقدار برگردانده شده توسط تابع را مشخص می کند .
تعیین نوع توابع ، اختیاری است .
اگر تابعی تعیین نوع نگردد کامپایلر زبان C فرض می کند مقداری که توسط تابع برگردانده می شود از نوع " صحیح " است .
نام تابع از قانون نامگذاری برای متغیرهای تبعیت می کند .
اسامی پارامترها شامل متغیرهایی است که باید به تابع منتقل کردند .
اگر تعداد پارامترها بیش از یکی باشد یا کاما از یکدیگر جدا می شوند .
تعریف پارامترها مجموعه دستوراتی است که نوع پارامترها را تعیین می نماید .
بدنه تابع شامل دستورالعمل هایی است که عمل تابع را مشخص می کند .
نکاتی را که باید در مورد توابع در نظر داشت عبارتند از : 1 کلیه توابع فرعی بعد از تابع اصلی (()main) تعریف می شوند .
2 اگر نوع تابعی غیراز نوع " صحیح " باشد، نوع آن باید در تابع فراخواننده به کامپایلر اعلان شود .
3 برای اجرای تابع باید آنها را فراخوانی نمود ( فراخوانی توابع توسط نام آنها انجام می شود ) .
4 همانطور که متغیرهای قابل استفاده در تابع اصلی باید در ابتدای این تابع تعریف شوند ، متغیرهای مورد نیاز هر تابع فرعی نیز باید در ابتدای آنها تعریف کردند .
5 تعریف یک تابع در داخل تابع دیگر امکان پذیر نیست .
ولی فراخوانی سطوح مختلف توابع ، ممکن است .
6 توابع از نظر تعداد مقادیری که به تابع فراخواننده برمی گردانند ، به سه دسته تقسیم می شوند .
الف ) توابعی که هیچ مقداری را برنمی گردانند .
ب ) توابعی که فقط یک مقدار را برمی گردانند .
ج ) توابعی که چند مقدار را به عنوان نتیجه عمل برمی گردانند .
7 درموقع فراخوانی توابع باید دقت داشت که تعداد و نوع آرگومانها با تعداد ونوع پارامترها یکسان باشند.
برای پی بردن به تفاوت بین آرگومانها و پارامترها می توانند به شکل (2) مراجعه نمایید .
ؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤ | main )(| | { | | ؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤ | | آرگومان ؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤؤ | | |