[Powered by Google Translate] ফাংশন হয় বিভাগে কোড একটি বড় প্রোগ্রাম মধ্যে ব্যবহৃত একটি বিশেষ কাজ. তারা পদ্ধতি, subroutines, এবং subprograms নামেও পরিচিত, যেহেতু সত্যিই এগুলো সব আনুষ্ঠানিকতা মাত্র প্রোগ্রাম মধ্যে মিনি প্রোগ্রাম. যদিও আপনি লক্ষ্য থাকতে পারে না, আপনি সবচেয়ে স্পষ্টভাবে ইতিমধ্যে ফাংশন ব্যবহৃত যদি আপনি সি প্রোগ্রাম করেছি মধ্যে আছে আপনি যখন পর্দা ব্যবহার printf যাও স্টাফ লিখুন, আপনি আসলে করছি একটি ফাংশন বলা printf ব্যবহার করে. অনুরূপভাবে, GetInt এবং GetString হয় ফাংশন যে CS50 আপনার জন্য উপলব্ধ করা হয়. প্রোগ্রামারদের হিসাবে, আমরা এক নম্বর কারণ ফাংশন ব্যবহার. ফাংশান লেখা পর্দায় মত সাধারণ কর্ম সঞ্চালন করা হচ্ছে এবং ইনপুট জন্য ব্যবহারকারীকে অনুরোধ জানানো সংরক্ষণ সময় আমাদের যখন প্রোগ্রামিং. এটা কোড ঐ একই জিনিস করতে লিখুন এর প্রয়োজন না যেহেতু তারা আমাদের জন্য ইতিমধ্যে সম্পন্ন করে ফেলেছেন. এটা আমাদের জন্য ঠিক কিভাবে তাদের কাজ কর্ম অন্ত বুঝতে এমনকি প্রয়োজনীয় না. পরিবর্তে, আমরা ঠিক কিভাবে বা ব্যবহার আমাদের প্রোগ্রাম তাদের কল জানা আছে. এছাড়াও এর বড় প্রোগ্রাম ইন ফাংশান উপস্থিত করা লিখুন সহায়ক এমনকি আপনি যদি হচ্ছে তা অন্য কাউকে ব্যবহার পরিকল্পনা করছি না, শুধু হাতের মাপের তিরস্কার বাঁটা আপ. এই ভাবে আপনি আপনার কোড গঠন দিতে অনেক ভালো আপনি একটি রচনা যাও গঠন দিতে চাই, এবং সত্যিই বড় বড় প্রকল্পের সঙ্গে আপনি একাধিক ব্যক্তি সক্ষম বিভিন্ন অংশে একই সময়ে কাজ যেহেতু এটা স্পষ্ট যেখানে এক ব্যক্তির কাজ শেষ হয় এবং অন্য এর শুরু. কার্যাবলী সাধারণত 1 অথবা আরো ইনপুট, আর্গুমেন্ট অথবা পরামিতি হিসাবে পরিচিত কাজ, আউটপুট মান যে তারপর ফিরে মধ্যে যারা ইনপুট রূপান্তর. যাইহোক, এটা এর ফাংশন যে কোনো ইনপুট আর্গুমেন্ট ব্যবহার করবেন না আছে সম্ভব এবং আউটপুট কি ফেরত দেয় না. ঠিক আছে, ফুঁয়োফুঁয়ো স্টাফ সঙ্গে যথেষ্ট. যাক এর কিছু বাস্তব ফাংশন সি কটাক্ষপাত করা এখানে আমরা একটি ফাংশন বলা বর্গাকার যে, এটি বিশ্বাস করি বা না আছে, ইনপুট বর্গ নির্ণয় করে. চলুন এটি বাক্য গঠন প্রণালী ব্যবচ্ছেদ. প্রথম যে শব্দটি আপনি ফাংশন দেখতে পাচ্ছেন, int, ফাংশন রিটার্ন টাইপ নির্ধারণ করা; যে, ফাংশন এর ফলাফলের সি টাইপ. এই ফাংশন টাইপ int-সঙ্গে একটি মান আউটপুট হবে. পরবর্তী শব্দ আপনি দেখতে হয় ফাংশন নাম, এই ক্ষেত্রে বর্গক্ষেত্র. ফাংশন উপযুক্তভাবে শিথিল নামাঙ্কন পদ্ধতি অত্যন্ত গুরুত্বপূর্ণ যেহেতু এটি সম্ভবত কি ফাংশন আছে সবচেয়ে দৃশ্যমান ডকুমেন্টেশন. এই ফাংশন shazam বা booyah নাম শান্ত হতে পারে, কিন্তু যে আমাদের কি আছে ফাংশন সম্পর্কে কিছু বলতে চাই না. নিম্নলিখিত ফাংশন নাম ফাংশন, আর্গুমেন্ট ইনপুট আসা. তারা প্রথম বন্ধনী একটি সেট ভিতরে তালিকাভুক্ত করা হয় উভয় তাদের একটি নাম টাইপ করুন এবং তাদের জন্য ফাংশন শরীরের মধ্যে ব্যবহার করা. চৌকো চৌকো যাও মাত্র 1 যুক্তি, int-লাগে, যা আমি নাম x দেওয়ার সিদ্ধান্ত নিয়েছেন করেছি. এই ফাংশন প্রোটোটাইপ ঘোষণা বা শেষ. কোঁকড়া ফাংশন বাকি পার্শ্ববর্তী ধনুর্বন্ধনী শুরুতে এবং ফাংশন শরীরের শেষ বোঝান, ফাংশন নিজেই সংজ্ঞা. বর্গক্ষেত্র একটি চমত্কার সহজ ফাংশন. এটা মাত্র 1 লাইন আছে, যেহেতু সমস্ত আমরা কি নিজে x গুন করা হয়. শব্দ ফেরত আউটপুট মান নির্ধারণ করা এবং কার্যকারিতা শেষ যাচ্ছে. যাও বর্গক্ষেত্র ফাংশান ব্যবহার, আমরা সঠিক ইনপুট সরবরাহ করতে হবে এবং তারপর আউটপুট ক্যাপচার. এখানে, আপনি যা করছেন উপায় কয়েক দেখুন. আমরা একটি কাঁচা int, 6 ভালো প্রেরণ করার জন্য, বা আমরা একটি ভালো একটি পরিবর্তনশীল মধ্যে পাস করতে পারে. উল্লেখ্য, প্রতিটি সময় আমরা বর্গক্ষেত্র, আমরা একটি পরিবর্তনশীল ফলাফল এবং তারপর ক্যাপচার এটি মুদ্রণ. যাইহোক, আমরা একটি পরিবর্তনশীল প্রতু্যত্তরে মান এবং তারপর সঞ্চয় মুদ্রণ করতে হবে না. আমরা শুধু পাঠাতে এটি সরাসরি printf পারে হিসাবে আমরা যখন আমরা বর্গক্ষেত্র 10, কিন্তু এই যে আমরা বর্গক্ষেত্র 10 ফিরতি মূল্য অ্যাক্সেস থাকবে না মানে না স্থানের কোড. যাক এর আরেকটি সহজ উদাহরণ তাকান. এই সময়, আমরা 2 floats যোগফল একসঙ্গে যাতে আমরা কি একটি ফাংশন মত দেখায় দেখতে পারেন কোন যখন এটি পরিবর্তে মাত্র 1 2 ইনপুট পেয়েছেন এর. হিসাবে আপনি দেখতে পারেন, এটা অনেক আলাদা না. সমস্ত আমরা না হয় 2nd যুক্তি, একটি float নামে বো মধ্যে যোগ, যুক্তি তালিকা একটি কমা প্রথম যুক্তি থেকে এটি পৃথক ব্যবহার করে, একটি ভাসা. সুতরাং, আমাদের বর্গাকার এবং সমষ্টি ফাংশন হয় চমত্কার বুঝতে সহজ কারণ তারা সমতুল্য ফাংশন যে আপনি আগে গণিত বর্গ দেখা করেছি. এখন, এর একটি ফাংশন যা কিছুটা ভিন্ন তাকান. পরিবর্তে একটি মান ফিরে, এটি একটি রাষ্ট্র পরিবর্তন করা যাবে. এই একটি পার্শ্ব প্রতিক্রিয়া হচ্ছে হিসাবে পরিচিত হয়. এই প্রোগ্রাম, printf_fudd_style ফাংশন একটি রিটার্ন টাইপ আছে যে আমরা আগে, শূন্যস্থান দেখা যায় না. অকার্যকর যাও যে একটা ফাংশন কিছু ফেরত না বলে ব্যবহার করা হয়. টাইপ অকার্যকর কোন ভেরিয়েবল আছে, তাই আপনি যদি যাও printf_fudd_style মত একটি ফাংশান থেকে কিছু ফেরত চেষ্টা, কম্পাইলার আপনাকে চিত্কার করা. Printf_fudd_style ইনসাইড, আমরা দেখতে যে সময় এখনও ফাংশন একটি টাস্ক সম্পাদন করে, যথা, Ws সকল প্রতি সুইচিং, ফাংশন বিন্দু স্ট্রিং এবং সংশোধন তারপর পর্দায় এটি প্রিন্ট আউট হল, প্রোগ্রাম রাষ্ট্র পরিবর্তন পরিবর্তে ফলে ফিরে. অনেক আমাদের বর্গাকার এবং সমষ্টি ফাংশন ব্যবহার করে এই ফাংশন ব্যবহার করা হল, ফলাফল ছাড়া আমরা একটি পরিবর্তনশীল মধ্যে সঞ্চয় করে না বা এটি পাস আরেকটি ফাংশন বন্ধ যেহেতু কোন ফলাফল যাও কথা বলা আছে. তাই, যখন আমরা ও আমাদের কম্পাইল এলমার ফাড প্রোগ্রাম চালানো, আপনি দেখতে যে "ডেকরা আপনি খরগোশ!" ডান রুপান্তরিত পরার "Wascally আপনি! Wabbit" অবশেষে, আলোচনা মূল্য 1 আরো ফাংশন নেই যেহেতু আপনি হয়েছি প্রতি সি প্রোগ্রাম আপনি কি কখনও করেছি লিখিত মধ্যে এটি ব্যবহার করে, প্রধান. মুখ্য অনেক অন্য কোন মত একটা ফাংশন. এটি একটি রিটার্ন টাইপ, একটি নাম, আর্গুমেন্ট একটি তালিকা, এবং শরীরের এর পেয়েছিলাম. মুখ্য রিটার্ন টাইপ সর্বদা কোন int, এবং এই int-প্রোগ্রামের অবস্থা যখন এটি সম্পন্ন যোগাযোগ করতে ব্যবহৃত হয়. কি এটা সফলভাবে চালানো, বা কি এটা তাড়াতাড়ি ত্রুটির কারণে শেষ পর্যন্ত? রিটার্নিং শূন্য একটি সফল চালানোর নির্দেশ করে, এবং কোনো অ শূন্য মান ফেরার সময় একটি ত্রুটি নির্দেশ করে. প্রোগ্রাম আপনি ধরনের লেখার উপর ভিত্তি করে, বিভিন্ন ত্রুটির জন্য বিভিন্ন কোড ফিরে সহায়ক হতে পারে জন্য যারা আপনার প্রোগ্রাম ব্যবহার করতে পরে. Mains যুক্তি হয় একটু বেশি জটিল. যুক্তি তালিকা করা হয় খালি করতে পারেন, যা আমরা মধ্যে বন্ধনীর মধ্যে শূন্যস্থান দ্বারা নির্দেশ লেখা, কোন int এবং গৃহস্থালির কাজ * s এর একটি অ্যারের: বা তালিকা 2 আর্গুমেন্ট থাকতে পারে না. যখন আপনার এই প্রোগ্রাম ব্যবহার করতে ইচ্ছুক ব্যবহৃত হয় যুক্তির উপর কমান্ড লাইন সালে পাশ যখন প্রোগ্রাম প্রার্থনা করা হয়. int-যুক্তি সাধারণত বলা হয় argc, এবং এটা সমান গৃহস্থালি * অ্যারের দ্বারা, argv হিসাবে পরিচিত. Argv কমান্ড লাইন প্রোগ্রাম পাস আর্গুমেন্ট রয়েছে. অন্য সংক্ষেপে, আমরা কিভাবে আরো বিস্তারিতভাবে এই ভেরিয়েবলগুলি ব্যবহার সম্পর্কে আলাপ - আলোচনা করব. এখন, আপনি প্রধান উভয় ক্ষেত্রেই ডিক্লেয়ার মুক্ত মনে করতে পারেন. আমি সাধারণত এটি লিখুন কোনো আর্গুমেন্ট, যখন সম্ভব সঙ্গে খাটো উপায় নির্বাচন করুন. এখন আপনি কি জানেন যে কিভাবে ফাংশন লিখতে, আপনি বড়, আরো জটিল প্রোগ্রাম উন্নয়নশীল আপনার মত ভাল আছেন. আমার নাম Nate Hardison. এটি CS50.