কম্পিউটার

C ভাষায় strncpy() ফাংশন কি?


C লাইব্রেরি ফাংশন char *strncpy(char *dest, const char *src, size_t n) src দ্বারা নির্দেশিত স্ট্রিং থেকে n অক্ষর পর্যন্ত কপি করে গন্তব্যে . যে ক্ষেত্রে, src-এর দৈর্ঘ্য n-এর চেয়ে কম, dest-এর বাকি অংশ নাল বাইট দিয়ে প্যাড করা হবে।

অক্ষরের একটি বিন্যাসকে স্ট্রিং বলা হয়।

ঘোষণা

নিম্নলিখিত একটি অ্যারের জন্য ঘোষণা −

char stringname [size];

যেমন − char স্ট্রিং[50]; দৈর্ঘ্য 50 অক্ষরের স্ট্রিং

শুরু করা

  • একক অক্ষর ধ্রুবক ব্যবহার করা -
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
  • স্ট্রিং ধ্রুবক ব্যবহার করা -
char string[10] = "Hello":;

অ্যাক্সেস করা হচ্ছে − একটি কন্ট্রোল স্ট্রিং "%s" ব্যবহার করা হয় যতক্ষণ না স্ট্রিংটি '\0' এর মুখোমুখি হয়।

strncpy( ) ফাংশন

  • এই ফাংশনটি উৎস স্ট্রিং-এর 'n' অক্ষরগুলিকে গন্তব্য স্ট্রিং-এ কপি করার জন্য ব্যবহৃত হয়।

  • গন্তব্য স্ট্রিং এর দৈর্ঘ্য উৎস স্ট্রিং এর থেকে বেশি বা সমান।

সিনট্যাক্স নিম্নরূপ -

strncpy (Destination string, Source String, n);

উদাহরণ প্রোগ্রাম

নিচে strncpy() ফাংশন −

-এর জন্য C প্রোগ্রাম রয়েছে
#include<string.h>
main ( ){
   char a[50], b[50];
   printf ("enter a string");
   gets (a);
   strncpy (b,a,3);
   b[3] = '\0';
   printf ("copied string = %s",b);
   getch ( );
}

আউটপুট

যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত ফলাফল তৈরি করে -

Enter a string : Hello
Copied string = Hel

C ভাষায় strncpy() ফাংশন কি?

এটি সাবস্ট্রিং বের করার জন্যও ব্যবহৃত হয়।

উদাহরণ 1

নিচের উদাহরণটি strncpy() ফাংশনের ব্যবহার দেখায়।

char result[10], s1[15] = "Jan 10 2010";
strncpy (result, &s1[4], 2);
result[2] = ‘\0’

আউটপুট

যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত ফলাফল তৈরি করে -

Result = 10

C ভাষায় strncpy() ফাংশন কি?

উদাহরণ 2

চলুন strncpy-এ আরেকটি উদাহরণ দেখি।

স্ট্রনসিপি লাইব্রেরি ফাংশন -

#include<stdio.h>
#include<string.h>
void main(){
   //Declaring source and destination strings//
   char source[45],destination[50];
   char destination1[10],destination2[10],destination3[10],destination4[10];
   //Reading source string and destination string from user//
   printf("Enter the source string :");
   gets(source);
   //Extracting the new destination string using strncpy//
   strncpy(destination1,source,2);
   printf("The first destination value is : ");
   destination1[2]='\0';//Garbage value is being printed in the o/p because always assign null value before printing O/p//
   puts(destination1);
   strncpy(destination2,&source[8],1);
   printf("The second destination value is : ");
   destination2[1]='\0';
   puts(destination2);
   strncpy(destination3,&source[12],1);
   printf("The third destination value is : ");
   destination3[1]='\0';
   puts(destination3);
   //Concatenate all the above results//
   strcat(destination1,destination2);
   strcat(destination1,destination3);
   printf("The modified destination string :");
   printf("%s3",destination1);//Is there a logical way to concatenate numbers to the destination string?//
}

আউটপুট

যখন উপরের প্রোগ্রামটি কার্যকর করা হয়, তখন এটি নিম্নলিখিত ফলাফল তৈরি করে -

Enter the source string :Tutorials Point
The first destination value is : Tu
The second destination value is : s
The third destination value is : i
The modified destination string :Tusi3

  1. C ভাষায় strcmp() ফাংশন কি?

  2. C ভাষায় strncat() ফাংশন কি?

  3. C ভাষায় strcat() ফাংশন কি?

  4. C ভাষায় strcpy() ফাংশন কি?