সি ল্যাঙ্গুয়েজে scanf() এবং gets() উভয় ফাংশনই এক্সটার্নাল সোর্স থেকে ইনপুট পেতে এবং ইনপুট হিসাবে সিস্টেমে পাস করার জন্য সংজ্ঞায়িত করা হয়। এখন উভয় ফাংশনের মধ্যে কিছু বৈশিষ্ট্যের পার্থক্য রয়েছে।
C −
-এ scanf() এবং gets() এর মধ্যে গুরুত্বপূর্ণ পার্থক্য নিচে দেওয়া হলSr. না। | কী | scanf() ফাংশন | gets() ফাংশন |
---|---|---|---|
1 | সংজ্ঞা | স্ক্যানফ() ফাংশন কীবোর্ড থেকে ইনপুট পড়তে পারে এবং প্রদত্ত বিন্যাস নির্দিষ্টকারী অনুসারে সেগুলি সংরক্ষণ করে। এটি একটি হোয়াইটস্পেস, নিউলাইন বা ইওএফের মুখোমুখি না হওয়া পর্যন্ত ইনপুট পড়ে৷ | ৷অন্যদিকে gets() ফাংশনটি কীবোর্ড থেকে ইনপুট গ্রহণ করতে ব্যবহৃত হয় যতক্ষণ না এটি একটি নতুন লাইন বা EOF-এর মুখোমুখি হয়। সাদা স্থানটিকে ইনপুটের একটি অংশ হিসাবে বিবেচনা করা হয়৷ | ৷
2 | হোয়াইটস্পেস | scanf() ফাংশনে হোয়াইট-স্পেসকে ইনপুট ক্যারেক্টার হিসেবে বিবেচনা করা হয় না এবং এর মধ্যে কোনো হোয়াইট-স্পেস দেখা দিলে এটি বাহ্যিক উৎস থেকে ইনপুট পড়া বন্ধ করে দেয়। | অন্যদিকে get() ফাংশনে হোয়াইট-স্পেসকে ইনপুট ক্যারেক্টার হিসাবে বিবেচনা করা হয় এবং এছাড়াও এটি বাহ্যিক উত্স থেকে ইনপুট পড়া বন্ধ করে দেয় যদি এর মধ্যে কোনও হোয়াইট-স্পেস ইনপুট উত্স থেকে পড়া চালিয়ে যায়। |
3 | সিনট্যাক্স | scanf() ফাংশন ফর্ম্যাট স্ট্রিং এবং ভেরিয়েবলের ঠিকানার তালিকা নেয়। যেমন scanf(“%d”, &number); | অন্যদিকে get() ফাংশন প্রাপ্ত মান সংরক্ষণ করতে ভেরিয়েবলের নাম নেয়। যেমন gets(নাম); |
4 | ডেটা টাইপ | scanf() ফাংশন বিভিন্ন ডেটা প্রকারের একাধিক মান পড়তে পারে। | তবে অন্য দিকে get() ফাংশন শুধুমাত্র অক্ষর স্ট্রিং ডেটা পাবে। |