[Powered by Google Translate] توابع بخش از کد مورد استفاده در یک برنامه بزرگتر
برای انجام یک کار خاص.
آنها همچنین به عنوان روش، زیرروالهای، و subprograms شناخته شده است،
از آنجایی که آنها واقعا فقط برنامه های کوچک در داخل برنامه.
حتی اگر شما ممکن است متوجه نیست،
از همه شما را قطعا استفاده از توابع در حال حاضر اگر شما در C. برنامه ریزی
هنگامی که شما مطالبی بنویسم به روی صفحه نمایش با استفاده از printf،
شما در واقع با استفاده از یک تابع به نام printf است.
به همین ترتیب، GetInt و GetString توابع که CS50 را برای شما فراهم می کند.
به عنوان برنامه نویسان، استفاده از توابع برای تعدادی از دلایل است.
>> داشتن توابع به انجام وظایف عادی مانند نوشتن به صفحه
و باعث کاربر برای ورودی موجب صرفه جویی در زمانی که برنامه نویسی است.
لازم نیست برای نوشتن کد به انجام آن چیزهایی مشابه
از آنجایی که آنها در حال حاضر برای ما انجام می شود.
حتی لازم نیست برای ما به درک دقیقا چگونه این توابع کار با داخلی.
در عوض، ما فقط باید بدانید که چگونه برای استفاده و یا آنها را در برنامه های ما است.
همچنین مفید است برای نوشتن توابع در برنامه های بزرگتر
حتی اگر شما در داشتن دیگران آنها را با استفاده از برنامه ریزی نیست،
فقط به تقسیم کار بیشتری در دست است.
به این ترتیب، شما را به ساختار بسیار شبیه به کد شما شما می خواهم به ساختار مقاله،
و با پروژه های واقعا بزرگ شما را قادر می سازد که چند نفر
برای کار بر روی بخش های مختلف در همان زمان
از آن که کار یک فرد به پایان می رسد و دیگری آغاز می شود.
>> توابع به طور معمول 1 یا چند ورودی، شناخته شده به عنوان آرگومان و یا پارامتر عمل می کنند،
تبدیل این ورودی را به یک مقدار خروجی است که سپس.
با این حال، آن را نیز ممکن است به توابع که هیچ آرگومان ورودی استفاده کنید
و خروجی بر نمی گرداند.
خوب، به اندازه کافی با چیزهای کرکی.
بیایید نگاهی به برخی از عملکردهای واقعی در C.
>> در اینجا ما باید یک تابع به نام مربع آن، آن را باور کنید یا نه،
محاسبه مربع از ورودی است.
بیایید تشریح نحو آن.
اولین کلمه شما را در تابع، عدد صحیح،
نوع برگشتی تابع را مشخص می، است که، با توجه به نوع خروجی تابع C است.
این تابع یک مقدار با نوع int دهد.
کلمه بعدی شما را ببینید نام تابع، مربع در این مورد است.
نامگذاری توابع مناسب بسیار مهم است
از آن احتمالا به اسناد قابل رویت ترین از آنچه تابع است.
این ممکن است سرد به نام Shazam را تابع و یا booyah،
اما این نیست که ما هر چیزی در مورد آنچه تابع بگویید.
>> پس از نام تابع بیا ورودی به تابع، استدلال است.
آنها در داخل یک مجموعه ای از پرانتز ذکر شده است
با هر دو نوع خود و یک نام برای استفاده از آنها در داخل بدنه تابع است.
میدان طول می کشد فقط 1 بحث، هوشمند مربع،
که من تصمیم گرفتم را به نام ایکس.
این امر به پایان می رسد یا نمونه اعلامیه تابع است.
فرفری پرانتز در اطراف بقیه از تابع
نشان دهنده آغاز و پایان بدنه تابع،
تعریف تابع خود.
میدان یک تابع بسیار ساده است.
این تنها 1 خط، از آنجا که همه ما باید انجام دهیم این است که ضرب x به خود است.
کلمه بازگشت مقدار خروجی را مشخص و باعث پایان تابع است.
برای استفاده از تابع مربع، ما نیاز به ورودی های مناسب عرضه
و سپس خروجی را ضبط کنید.
در اینجا، شما یک زن و شوهر از راه های انجام این کار است.
ما می توانیم در یک نوع int خام منتقل می کند، مانند 6، و یا ما می توانیم در یک متغیر مانند عبور کنید.
توجه داشته باشید که هر زمان ما تماس بگیرید مربع،
خروجی در یک متغیر ضبط می کنیم و سپس آن را چاپ کنید.
با این حال، ما لازم نیست که مقدار بازگشتی را در یک متغیر ذخیره و سپس آن را چاپ.
ما فقط می تواند آن را به طور مستقیم به printf به عنوان کار می کنیم زمانی که ما مربع 10،
اما این به آن معنا است که ما دسترسی به مقدار بازگشتی مربع 10 ندارد
در جاهای دیگر کد.
اجازه دهید نگاهی به یک مثال ساده دیگر.
>> در این زمان، ما 2 شناور با یکدیگر به طوری که ما می توانیم ببینیم که چه چیزی یک تابع به نظر می رسد مثل خلاصه
هنگامی که آن را 2 ورودی به جای فقط 1.
همانطور که می بینید، آن را بسیار متفاوت نیست.
همه ما انجام می دهیم این است که اضافه کردن در استدلال 2، شناور به نام B،
به لیست استدلال با استفاده از کاما به آن را جدا از استدلال اول، شناور است.
بنابراین، مربع و توابع مجموع بسیار آسان به درک
زیرا آنها معادل توابع است که شما را دیده ام قبل از کلاس ریاضی.
در حال حاضر، اجازه دهید نگاهی به یک تابع است که کمی متفاوت است.
به جای بازگشت به یک مقدار، تغییر دولت است.
این است که به عنوان داشتن یک اثر جانبی شناخته شده است.
در این برنامه، از تابع printf_fudd_style
دارای یک نوع بازگشت است که ما را دیده اند، نه قبل از آن، از درجه اعتبار ساقط است.
>> باطل است مورد استفاده قرار گیرد می گویند که یک تابع چیزی بر نمی گرداند.
به هیچ متغیر از نوع خالی وجود دارد،
بنابراین اگر شما سعی می کنید برای بازگشت به چیزی از یک تابع مانند printf_fudd_style،
کامپایلر را به شما داد.
به داخل printf_fudd_style، ما می بینیم که در حالی که تابع انجام یک کار،
یعنی، تعویض تمامی تومان WS،
نقطه از تابع برای تغییر رشته و سپس آن را چاپ کنید بر روی صفحه نمایش،
تغییر وضعیت از این برنامه به جای بازگشت به نتیجه.
با استفاده از این تابع بسیار شبیه با استفاده از مربع و توابع مجموع،
به جز ما در نتیجه در یک متغیر ذخیره نمی کند و یا آن را به یک تابع دیگر
از آنجا که هیچ نتیجه ای برای صحبت وجود دارد.
بنابراین، زمانی که ما کامپایل و اجرای برنامه المر فاد ما
شما می بینید که "شما rascally خرگوش را!" می شود حق را به تبدیل
"شما wascally! wabbit"
>> در نهایت، عملکرد 1 ارزش بحث در مورد وجود دارد
از آنجایی که شما با استفاده از آن در هر برنامه C شما تا کنون نوشته شده است، اصلی.
صفحه اصلی یک تابع مانند هر دیگر است.
این یک نوع بازگشت، یک نام، یک لیست از استدلال، و بدن است.
نوع بازگشت از اصلی است که همیشه بین المللی،
و این نوع int است مورد استفاده قرار گیرد برای برقراری ارتباط از وضعیت برنامه زمانی که آن را پس از اتمام.
>> آیا آن را اجرا با موفقیت، و یا آن را به پایان زود هنگام به دلیل یک خطا؟
بازگشت به صفر نشان می دهد یک اجرای موفق،
و بازگشت هر مقدار غیر صفر یک خطا را نشان می دهد.
بسته به نوع برنامه ای که شما در حال نوشتن،
بازگشت کدهای مختلف برای خطاهای مختلف می تواند مفید باشد
برای افرادی که استفاده از برنامه های خود را بعد از.
برق استدلال کمی پیچیده تر است.
>> لیست بحث هم می تواند خالی باشد،
که ما آن را با نوشتن خالی در بین پرانتز نشان می دهد،
بین المللی و آرایه ای از کاراکتر * S: و یا فهرست می تواند 2 استدلال داشته باشد.
این زمانی استفاده می شود که برنامه های خود را در نظر دارد برای استفاده از
آرگومانهای داده شده در خط فرمان، زمانی که برنامه استناد شده است.
آرگومان از نوع int است که به طور معمول به نام argc،
و آن را برابر با طول آرایه * کاراکتر، شناخته شده به عنوان ی argv است.
ی argv شامل استدلال های خط فرمان به برنامه تصویب می باشد.
در یکی دیگر از کوتاه مدت، ما در مورد چگونگی استفاده از این متغیر ها را با جزئیات بیشتر صحبت خواهیم کرد.
در حال حاضر، شما می توانید احساس رایگان برای اعلام اصلی در هر دو صورت.
من به طور معمول را انتخاب کنید تا آن را از راه کوتاه تر، با هیچ استدلال، در صورت امکان.
>> حالا که شما می دانید که چگونه به نوشتن توابع،
شما در راه خود را به در حال توسعه بزرگتر، پیچیده تر برنامه ها.
نام من مقابله Hardison است. این CS50 است.