কেন প্রথম বন্ধনী ছাড়াই ফাংশন ডাকা যেতে পারে


3

কি printএকটি ফাংশন বা বিবৃতি।

বন্ধনী কেন প্রয়োজন হয় না?

আমি এই বিষয় সম্পর্কে কোনও তথ্য খুঁজে পাইনি।

উত্তর:


2

print হ'ল একটি বিবৃতি যা প্রয়োজন (কিন্তু allyচ্ছিকভাবে গ্রহণ করে) প্রথম বন্ধনী না।

আইটেমের সম্পূর্ণ তালিকাটি বন্ধনীতে allyচ্ছিকভাবে আবদ্ধ থাকতে পারে। আইটেমের কোনও এক্সপ্রেশন যদি `> 'রিলেশনাল অপারেটর ব্যবহার করে তবে প্রথম বন্ধনী প্রয়োজনীয়; অন্যথায় এটি একটি পুনঃনির্দেশের সাথে বিভ্রান্ত হতে পারে

( মুদ্রণের বিবৃতি দেখুন )

কিছু লোক সবসময় প্রথম বন্ধনী ব্যবহার করে, কারণ যেমন তারা ফাংশন সিনট্যাক্স পছন্দ করে এবং এর কোনও নেতিবাচক পার্শ্ব প্রতিক্রিয়া নেই।


কোন বাক্যটি কী একটি বিবৃতি দেয় তা হ'ল (১) নির্দিষ্ট সিনট্যাক্টিক প্রসঙ্গে, যেমন অ্যাডক স্ক্রিপ্টের সম্পূর্ণ লাইন হিসাবে বা (২) এর কোনও মান ফেরত না আসার ক্ষমতা। হয় বোঝার দ্বারা printএকটি বিবৃতি। উভয় বোঝাপড়া যদিও সমস্যাযুক্ত। প্রথম কারণ কয়েকটি (তবে সমস্ত নয়) বিশ্রী বাস্তবায়নের ক্ষেত্রে কোনও বিবৃতি একটি বিবৃতি প্রসঙ্গে আসতে পারে, সুতরাং এই বোঝার উপর সমস্ত অভিব্যক্তি বিবৃতি হবে। দ্বিতীয় কারণ অ্যাসাইনমেন্ট এবং ব্যবহারকারী-সংজ্ঞায়িত ফাংশন কলগুলি রিটার্ন করে তবে প্রথমটি নির্বিচারে এবং দ্বিতীয়টি বিতর্কিতভাবে একটি বিবৃতি।
dubiousjim

এছাড়াও এমন ক্রিয়াকলাপ রয়েছে যেগুলির জন্য প্রথম বন্ধনী প্রয়োজন হয় না: getlineএটির একটি উদাহরণ, এবং কিছু উত্তোলনের বাস্তবায়নের ক্ষেত্রে, আপনি lengthবন্ধনী ছাড়াই শর্টহ্যান্ড হিসাবে ব্যবহার করতে পারেন length($0)
সন্দেহভাজন জিম

@ সন্দেহজনক জিম: দয়া করে আমি যে সূক্ষ্ম বিষয়গুলি রেখে গেছি বা না বুঝতে পেরেছি তা যথাযথভাবে উত্তরটি সম্পাদন করতে নির্দ্বিধায় অনুভব করুন।
পেথ

আমি আপনার উত্তরটির সমালোচনা করা বলতে চাইছিলাম না, তবে মুদ্রণটিকে কেন একটি বিবৃতি হিসাবে গণ্য করা হয়, তবে গেটলাইনটিকে একটি ফাংশন হিসাবে গণ্য করা হয় কেন (উদাহরণস্বরূপ সুস্পষ্ট নয়) অসুবিধাগুলি সম্পর্কে উচ্চস্বরে চিন্তা করা।
dubiousjim

বিবৃতি এবং এক্সপ্রেশন মধ্যে একটি বিশাল পার্থক্য আছে (ফাংশন কল এক্সপ্রেশন হয়)। এক্সপ্রেশন কিছু ফিরে। উদাহরণস্বরূপ, স্প্রিন্টফ () ফাংশন নিন। এটি প্রিন্টফের মতো, এটি কোনও স্ট্রিং ফিরিয়ে দেয়। প্রিন্ট এবং প্রিন্টফ কোনও কিছু ফেরত দেয় না (তাদের কোনও মান ফেরত দেওয়ার পক্ষে এটি কোনও বোঝার নয়)। এর অর্থ হল যে আপনি করতে পারবেন না length(print $1), তা বোঝা যায় না। তবে আপনি করতে পারেন length(sprintf("%s", $1))
অন্ধকাররেখা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.