কম্পিউটার

strcmp() C/C++ এ


ফাংশন strcmp() একটি বিল্ট-ইন লাইব্রেরি ফাংশন এবং এটি "string.h" হেডার ফাইলে ঘোষণা করা হয়। এই ফাংশনটি স্ট্রিং আর্গুমেন্ট তুলনা করতে ব্যবহৃত হয়। এটি অভিধানগতভাবে স্ট্রিংগুলির তুলনা করে যার অর্থ এটি অক্ষর অনুসারে উভয় স্ট্রিং অক্ষরকে তুলনা করে। এটি স্ট্রিংগুলির প্রথম অক্ষরের সাথে তুলনা করা শুরু করে যতক্ষণ না উভয় স্ট্রিংয়ের অক্ষর সমান হয় বা NULL অক্ষর পাওয়া যায়।

উভয় স্ট্রিং এর প্রথম অক্ষর সমান হলে, এটি দ্বিতীয় অক্ষর এবং তাই পরীক্ষা করে। NULL অক্ষর পাওয়া না যাওয়া পর্যন্ত বা উভয় অক্ষরই অসম না হওয়া পর্যন্ত এই প্রক্রিয়াটি অব্যাহত থাকবে৷

এখানে C ভাষায় strcmp() এর সিনট্যাক্স আছে,

int strcmp(const char *leftStr, const char *rightStr );

এই ফাংশন তুলনার উপর ভিত্তি করে নিম্নলিখিত তিনটি ভিন্ন মান প্রদান করে।

1.শূন্য(0) - উভয় স্ট্রিং অভিন্ন হলে এটি শূন্য প্রদান করে। উভয় স্ট্রিং-এ সমস্ত অক্ষর একই।

এখানে strcmp() এর একটি উদাহরণ দেওয়া হল যখন C ভাষায় উভয় স্ট্রিং সমান হয়,

উদাহরণ

#include<stdio.h>
#include<string.h>
int main() {
   char str1[] = "Tom!";
   char str2[] = "Tom!";
   int result = strcmp(str1, str2);
   if (result==0)
   printf("Strings are equal");
   else
   printf("Strings are unequal");
   printf("\nValue returned by strcmp() is: %d" , result);
   return 0;
}

আউটপুট

Strings are equal
Value returned by strcmp() is: 0

2.শূন্যের চেয়ে বড়(>0) - এটি শূন্যের চেয়ে বেশি একটি মান প্রদান করে যখন বাম স্ট্রিং-এর মিলিত অক্ষরটির ডান স্ট্রিংয়ের অক্ষরের চেয়ে ASCII মান বেশি থাকে৷

এখানে strcmp() এর একটি উদাহরণ দেওয়া হল যখন এটি C ভাষায় শূন্য মানের থেকে বেশি রিটার্ন করে,

উদাহরণ

#include<stdio.h>
#include<string.h>
int main() {
   char str1[] = "hello World!";
   char str2[] = "Hello World!";
   int result = strcmp(str1, str2);
   if (result==0)
   printf("Strings are equal");
   else
   printf("Strings are unequal");
   printf("\nValue returned by strcmp() is: %d" , result);
   return 0;
}

আউটপুট

Strings are unequal
Value returned by strcmp() is: 32

3.শূন্যের চেয়ে কম(<0) - যখন বাম স্ট্রিং এর মিলিত অক্ষরটির ডান স্ট্রিং এর অক্ষরের চেয়ে কম ASCII মান থাকে তখন এটি শূন্যের চেয়ে কম একটি মান প্রদান করে৷

এখানে C ভাষায় strcmp() এর একটি উদাহরণ রয়েছে

উদাহরণ

#include<stdio.h>
#include<string.h>
int main() {
   char leftStr[] = "Hello World!";
   char rightStr[] = "hello World!";
   int result = strcmp(leftStr, rightStr);
   if (result==0)
   printf("Strings are equal");
   else
   printf("Strings are unequal");
   printf("\nValue returned by strcmp() is: %d" , result);
   return 0;
}

আউটপুট

Strings are unequal
Value returned by strcmp() is: -32

  1. C/C++ এ putwchar() ফাংশন

  2. C/C++ এ memcpy()

  3. স্ট্রিংগুলিকে C/C++ এ সংখ্যায় রূপান্তর করা হচ্ছে

  4. C/C++ এ AA গাছ?