strlen(), strcpy(), strncpy() এর মাধ্যমে স্ট্রিং কপি করা

String Handling Functions (স্ট্রিং হ্যান্ডলিং ফাংশনস) - সি স্ট্যান্ডার্ড লাইব্রেরি রেফারেন্স (C Standard Library Reference) - Computer Programming

541

strlen(), strcpy(), এবং strncpy() এর মাধ্যমে স্ট্রিং কপি করা

সি প্রোগ্রামিং ভাষায় স্ট্রিং ম্যানিপুলেশনের জন্য string.h হেডার ফাইলটি ব্যবহৃত হয়। এই হেডার ফাইলে স্ট্রিং সম্পর্কিত বিভিন্ন ফাংশন রয়েছে, যেমন strlen(), strcpy(), এবং **strncpy()**। এই ফাংশনগুলোর মাধ্যমে স্ট্রিং মাপা, কপি করা এবং নির্দিষ্ট সংখ্যক ক্যারেক্টার কপি করা যায়।

এখানে এই ফাংশনগুলোর বিস্তারিত ব্যবহার আলোচনা করা হলো:


১. strlen() – স্ট্রিংয়ের দৈর্ঘ্য নির্ধারণ

strlen() ফাংশনটি একটি স্ট্রিংয়ের দৈর্ঘ্য নির্ধারণ করতে ব্যবহৃত হয়। এটি স্ট্রিংয়ের মধ্যে কতগুলি ক্যারেক্টার (নাল ক্যারেক্টার ছাড়া) রয়েছে তা নির্ধারণ করে এবং একটি ইন্টিজার রিটার্ন করে।

সিঙ্কট্যাক্স:

size_t strlen(const char *str);

উদাহরণ:

#include <stdio.h>
#include <string.h>

int main() {
    char str[] = "Hello, World!";
    
    // স্ট্রিংয়ের দৈর্ঘ্য নির্ধারণ
    printf("Length of the string is: %zu\n", strlen(str));
    
    return 0;
}

এখানে strlen(str) স্ট্রিংয়ের দৈর্ঘ্য বের করে এবং আউটপুটে প্রদর্শন করে।


২. strcpy() – স্ট্রিং কপি করা

strcpy() ফাংশনটি একটি স্ট্রিংকে অন্য স্ট্রিংয়ে কপি করার জন্য ব্যবহৃত হয়। এটি প্রথম স্ট্রিংয়ের সমস্ত কন্টেন্ট (নাল ক্যারেক্টার সহ) কপি করে দ্বিতীয় স্ট্রিংয়ে।

সিঙ্কট্যাক্স:

char *strcpy(char *dest, const char *src);
  • dest – যেখানে স্ট্রিং কপি করা হবে।
  • src – যে স্ট্রিংটি কপি করা হবে।

উদাহরণ:

#include <stdio.h>
#include <string.h>

int main() {
    char src[] = "Hello, World!";
    char dest[50];  // পর্যাপ্ত সাইজ থাকতে হবে

    // স্ট্রিং কপি করা
    strcpy(dest, src);

    printf("Source: %s\n", src);
    printf("Destination: %s\n", dest);

    return 0;
}

এখানে strcpy(dest, src) ফাংশনটি src স্ট্রিংয়ের কন্টেন্ট dest স্ট্রিংয়ে কপি করেছে।


৩. strncpy() – নির্দিষ্ট সংখ্যক ক্যারেক্টার কপি করা

strncpy() ফাংশনটি strcpy() এর মতোই কাজ করে, তবে এটি একটি সীমিত সংখ্যক ক্যারেক্টার কপি করতে পারে। এটি নির্দিষ্ট সংখ্যক ক্যারেক্টার কপি করার জন্য ব্যবহৃত হয়, এবং যদি সুত্র স্ট্রিং ছোট হয় তবে বাকি স্থান \0 দিয়ে পূর্ণ হয়।

সিঙ্কট্যাক্স:

char *strncpy(char *dest, const char *src, size_t n);
  • dest – যেখানে স্ট্রিং কপি করা হবে।
  • src – যে স্ট্রিংটি কপি করা হবে।
  • n – কপির জন্য স্ট্রিংয়ের দৈর্ঘ্য।

উদাহরণ:

#include <stdio.h>
#include <string.h>

int main() {
    char src[] = "Hello, World!";
    char dest[50];

    // স্ট্রিংয়ের প্রথম 5 ক্যারেক্টার কপি করা
    strncpy(dest, src, 5);
    dest[5] = '\0';  // নিশ্চিত করা যে স্ট্রিংয়ের শেষে নাল ক্যারেক্টার যুক্ত হবে

    printf("Source: %s\n", src);
    printf("Destination: %s\n", dest);

    return 0;
}

এখানে strncpy(dest, src, 5) ফাংশনটি src স্ট্রিংয়ের প্রথম 5টি ক্যারেক্টার dest স্ট্রিংয়ে কপি করেছে। এরপর আমরা নিজে dest[5] = '\0'; ব্যবহার করে স্ট্রিংয়ের শেষে নাল ক্যারেক্টার যোগ করেছি।


সারসংক্ষেপ

ফাংশনকাজসিঙ্কট্যাক্স
strlen()স্ট্রিংয়ের দৈর্ঘ্য নির্ধারণsize_t strlen(const char *str);
strcpy()একটি স্ট্রিংকে অন্য স্ট্রিংয়ে কপি করাchar *strcpy(char *dest, const char *src);
strncpy()নির্দিষ্ট সংখ্যক ক্যারেক্টার কপি করাchar *strncpy(char *dest, const char *src, size_t n);

এই ফাংশনগুলো স্ট্রিং ম্যানিপুলেশনের জন্য খুবই গুরুত্বপূর্ণ এবং সি প্রোগ্রামিংয়ে স্ট্রিং হ্যান্ডলিং সহজ ও কার্যকরী করতে সহায়ক। strlen() স্ট্রিংয়ের দৈর্ঘ্য নির্ধারণ করতে ব্যবহার হয়, strcpy() স্ট্রিং কপি করতে ব্যবহার হয়, এবং strncpy() সীমিত সংখ্যক ক্যারেক্টার কপি করতে ব্যবহৃত হয়।

Content added By
Promotion

Are you sure to start over?

Loading...