پیاده سازی strncpy به دو صورت
صورت اول:
صورت اول:
char *strncpy(char *s,const char *t,unsigned n)
{
for(unsigned i=0;i<n && t[i]!='\0';i++)
s[i]=t[i];
for(;i<n;i++)
s[i]='\0';
return s;
}
//end
{
for(unsigned i=0;i<n && t[i]!='\0';i++)
s[i]=t[i];
for(;i<n;i++)
s[i]='\0';
return s;
}
//end
صورت دوم:
char *strncpy(char *s,const char *t,unsigned n)
{
char *ts=s;
for(unsigned i=0;i<n && *t!='\0';i++,s++,t++)
*s=*t;
for(;i<n;i++,s++)
*s='\0';
return ts;
}
//end
{
char *ts=s;
for(unsigned i=0;i<n && *t!='\0';i++,s++,t++)
*s=*t;
for(;i<n;i++,s++)
*s='\0';
return ts;
}
//end
پیاده سازی strcpy به دو صورت
حالت اول:
char *strcpy(char *s,const char *t)
{
int i=0;
while((s[i]=t[i])!='\0')
i++;
return s;
}
//end
{
int i=0;
while((s[i]=t[i])!='\0')
i++;
return s;
}
//end
حالت دوم:
char *strcpy(char *s,const char *t)
{
char *ts;
ts=s;
while((*s=*t)!='\0')
{
s++;
t++;
}
return ts;
}
//end
{
char *ts;
ts=s;
while((*s=*t)!='\0')
{
s++;
t++;
}
return ts;
}
//end
- برچسب ها: strcpy، strcopy، string copy، رشته، کپی رشته ها، کپی، تابع،
برنامه ای که نحوه عملکرد تابع strncpy را نشان میدهد:
#include <iostream.h>
#include <cstring.h>
int main(){
char str[ ] = "cats are nice usually.";
cout<<"before operating :\n"<<str;
strncpy(str,"dogs",4);
strncpy(str+9,"mean",4);
cout<<"\nafter operating :\n"<<str<<endl;
return 0 ;
}
//end
#include <cstring.h>
int main(){
char str[ ] = "cats are nice usually.";
cout<<"before operating :\n"<<str;
strncpy(str,"dogs",4);
strncpy(str+9,"mean",4);
cout<<"\nafter operating :\n"<<str<<endl;
return 0 ;
}
//end
- برچسب ها: رشته، کپی رشته ها، strcpy، strncpy، stringncopy، string،
strncpy تابع کپی تعداد مشخصی از کاراکتر های یک رشته در دیگری
شکل کلی:
;(تعداد کاراکتر کپی شونده ,رشته مبدا ,نقطه ی آغازین عمل کپی+رشته مقصد)strncpy
مثال:
strncpy(str1+m;str2;n);
//end
//end
در مثال فوق تعداد n کاراکتر ابتدایی رشته ی str2 را از کاراکتر (m+1) ام رشته ی str1 تا محل (m+n+1) کپی میکند. اگر تعداد کاراکتر هایی که در str2 وجود دارد، کمتر از مقدار n باشد، به تعداد لازم کاراکتر NULL در انتهای str1 کپی میشود.
strcpy تابع انتساب رشته های کاراکتری، موجود در cstring.h
شکل کلی تابع:
;(رشته مبدا ،رشته مقصد)strcpy
مثال:
strcpy(str1, str2);
strcpy(str, "Computer");
//end
strcpy(str, "Computer");
//end
تذکر:
1. کپی کردن هر گونه رشته در رشته ای از نوع string به واسطه ی دستور انتساب(=) صورت میگیرد. بنابراین هیچ یک از پارامتر ها strcpy نمی تواند از نوع string باشد.
2. مراقب باشید که رشته ی مقصد طول کوچکتری نسبت به رشته ی مبدا نداشته باشد.
1. کپی کردن هر گونه رشته در رشته ای از نوع string به واسطه ی دستور انتساب(=) صورت میگیرد. بنابراین هیچ یک از پارامتر ها strcpy نمی تواند از نوع string باشد.
2. مراقب باشید که رشته ی مقصد طول کوچکتری نسبت به رشته ی مبدا نداشته باشد.
- برچسب ها: strcpy، انتساب رشته، انتساب، رشته ها، رشته، رشته های کاراکتری، string، char، آرایه ای از کاراکتر ها، کپی رشته، کپی رشته ها در C++، تابع strcpy، strcopy، string copy، تابع strcpy c++،
- کل صفحات:0
تبلیغات
