কম্পিউটার টিউটোরিয়াল

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


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

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

ডিক্লেয়ারেশন

একটি অ্যারের জন্য ডিক্লেয়ারেশন নিম্নরূপ:

char stringname[size];

উদাহরণস্বরূপ - char string[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  main(){    char a[50], b[50];    printf("একটি স্ট্রিং লিখুন");    gets(a);    strncpy(b, a, 3);    b[3] = '\0';    printf("কপি করা স্ট্রিং = %s", b);    getch(); }

আউটপুট

উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:

একটি স্ট্রিং লিখুন: Hello কপি করা স্ট্রিং = Hel

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

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

উদাহরণ ১

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

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

আউটপুট

উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:

Result = 10

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

উদাহরণ ২

strncpy সম্পর্কে আরেকটি উদাহরণ দেখুন।

strncpy লাইব্রেরি ফাংশন ব্যবহার করে সোর্স স্ট্রিং থেকে n সংখ্যক ক্যারেক্টার ডেস্টিনেশন স্ট্রিং-এ কপি করার C প্রোগ্রাম নিচে দেওয়া হল:

#include  #include  void main(){    // সোর্স এবং ডেস্টিনেশন স্ট্রিং ডিক্লেয়ার করা //    char source[45], destination[50];    char destination1[10], destination2[10], destination3[10], destination4[10];    // ইউজার থেকে সোর্স স্ট্রিং এবং ডেস্টিনেশন স্ট্রিং পড়া //    printf("সোর্স স্ট্রিং লিখুন: ");    gets(source);    // strncpy ব্যবহার করে নতুন ডেস্টিনেশন স্ট্রিং এক্সট্র্যাক্ট করা //    strncpy(destination1, source, 2);    printf("প্রথম ডেস্টিনেশন ভ্যালু হল: ");    destination1[2] = '\0'; // আউটপুট প্রিন্ট করার আগে সবসময় নাল ভ্যালু অ্যাসাইন করুন //    puts(destination1);    strncpy(destination2, &source[8], 1);    printf("দ্বিতীয় ডেস্টিনেশন ভ্যালু হল: ");    destination2[1] = '\0';    puts(destination2);    strncpy(destination3, &source[12], 1);    printf("তৃতীয় ডেস্টিনেশন ভ্যালু হল: ");    destination3[1] = '\0';    puts(destination3);    // উপরের সব রেজাল্ট কনক্যাটেনেট করা //    strcat(destination1, destination2);    strcat(destination1, destination3);    printf("মডিফাইড ডেস্টিনেশন স্ট্রিং: ");    printf("%s3", destination1); // ডেস্টিনেশন স্ট্রিং-এ নম্বর কনক্যাটেনেট করার লজিক্যাল উপায় কী? // }

আউটপুট

উপরের প্রোগ্রামটি এক্সিকিউট করলে নিচের ফলাফল পাওয়া যাবে:

সোর্স স্ট্রিং লিখুন: Tutorials Point প্রথম ডেস্টিনেশন ভ্যালু হল: Tu দ্বিতীয় ডেস্টিনেশন ভ্যালু হল: s তৃতীয় ডেস্টিনেশন ভ্যালু হল: i মডিফাইড ডেস্টিনেশন স্ট্রিং: Tusi3
  1. C ভাষায় strcmp() ফাংশন কী?

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

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

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