در تمامی موارد زیر فرض کنید str رشته ای از نوع string است که بصورت زیر تعریف شده است:
//end
تابع find: این تابع جهت یافتن یک زیر رشته در یک رشته از نوع string به کار می رود. این تابع بصورت کلی زیر بکار می رود:
تابع rfind: این تابع از نظر به کار گیری دقیقا مشابه تابع find است با این تفاوت که عمل جستجو را از نقطه شروع به طور معکوس (به سمت ابتدا رشته) انجام میدهد.
تابع find_first_of: این تابع رشته را به جهت یافتن اولین موقعیتی که یک کاراکتر از عناصر یک مجموعه کاراکتری وجود داشته باشد، مورد جستجو قرار می دهد و بصورت کلی زیر بکار می رود:
تابع find_last_of و find_last_not_of: این دو تابع دقیقا مشابه دو تابع قبلی عمل میکنند با این تفاوت که همانند تابع rfind رشته را از انتها به ابتدا جهت یافتن آخرین کاراکتر مورد نظر جستجو میکند.
برنامه ای که یک رشته را در رشته ای دیگر کپی میکند.
strncpy تابع کپی تعداد مشخصی از کاراکتر های یک رشته در دیگری
شکل کلی:
//end
strcat تابع الحاق دو رشته
شکل کلی:
//end
نکته: این تابع نیز تنها برای رشته های از نوع آرایه های کاراکتری تعریف شده است و برای الحاق هرگونه رشته به رشته ای از نوع string باید از عملگر + استفاده کنید.
- برچسب ها: رشته ها، رشته، رشته های کاراکتری، strcat، الحاق رشته، string، تابع strcat، توابع عضو string، تابع عضو شیء،
strcmp تابع مقایسه دو رشته، موجود در cstring.h
شکل کلی:
//end
این تابع شروع به مقایسه ی کاراکتر های هر دو رشته از ابتدا ی آنها میکند تا به اولین مورد اختلاف برسد. اگر کاراکتر مربوط به رشته ی 1 بزرگتر از کاراکتر مربوط به رشته ی 2 باشد، مقداری مثبت یعنی عدد 1 را برمیگرداند.این بدان مفهوم است که str1>str2. هم چنین به عکس اگر کاراکتر مربوط به رشته ی 1 کوچکتر از کاراکتر مربوط به رشته ی 2 باشد، مقداری منفی یعنی عدد -1 را به مفهوم اینکه str1<str2 است، بر میگرداند. اگر دو رشته با هم مساوی باشند، مقدار 0 برگردانده میشود.
- برچسب ها: strcmp، strcompare، مقایسه، مقایسه ی رشته ها، مقایسه در C++، رشته، رشته ها، رشته های کاراکتری، string، char،
strcpy تابع انتساب رشته های کاراکتری، موجود در cstring.h
شکل کلی تابع:
strcpy(str, "Computer");
//end
1. کپی کردن هر گونه رشته در رشته ای از نوع string به واسطه ی دستور انتساب(=) صورت میگیرد. بنابراین هیچ یک از پارامتر ها strcpy نمی تواند از نوع string باشد.
2. مراقب باشید که رشته ی مقصد طول کوچکتری نسبت به رشته ی مبدا نداشته باشد.
- برچسب ها: strcpy، انتساب رشته، انتساب، رشته ها، رشته، رشته های کاراکتری، string، char، آرایه ای از کاراکتر ها، کپی رشته، کپی رشته ها در C++، تابع strcpy، strcopy، string copy، تابع strcpy c++،
آرایه های کاراکتری به عنوان آرگومان تابع:
چون رشته ها در زبان C++ همان آرایه های یک بعدی است که از نوع کاراکتری است. شیوه ی ارسال رشته ها به توابع همانند آرایه است، یعنی در آرگومان تابع نام رشته ذکر میشود و پارامتر معادل آن میتواند آرایه ای از کاراکتر ها با طول معیّن باشد.
شکل کلی:
int main()
{
char s[21];
...
f1(s);
return 0;
}
void f1(char s[])
{
...
}
//end
- برچسب ها: کاراکتر، کاراکتر ها، رشته، رشته ها، رشته های کاراکتری، آرایه های کاراکتری، آرایه، character، string of characters، characters، 26،
مقدار دهی اولیه به آرایه های کاراکتری:
برای مقدار دهی اولیه به آرایه های کاراکتری دو روش وجود دارد:
1.
char ch[] = "computer";
//end
char ch[] = {'a','l','i','\0'};
//end
قبلا دستورات cin و cout را برای ورودی و خروجی داده ها بررسی کرده ایم. از همین دستورات می توان برای ورودی - خروجی رشته ها استفاده کرد. در دستورات زیر cin رشته ی ch را می خواند و cout آن را در صفحه نمایش میدهد:
cin>>ch;
cout<<"ch is: "<<ch;
//end
get یک تابع عضو(Member Function) شی(Object) ورودی cin است و کاربرد های مختلفی دارد:
1. کاربرد cin.get() برای خواندن یک کاراکتر:
ch=cin.get();
//end
2)cin.get(نام رشته, طول رشته, 'جدا کننده');
//end
cin.get(8,15);
cin.get(5,15,'.');
//end
در دستور cin.get فقط کلید Enter، انتهای رشته را مشخص میکند، مگر اینکه برنامه نویس کاراکتر دیگری را برای این منظور مشخص کند. در این دستور رشته میتواند حاوی فاصله(Space) و یا Tab باشد. در حالی که در دستور cin، فاصله(Space) و Tab نیز به عنوان جدا کننده تلقّی شده، انتهای رشته را مشخص می کنند.
- برچسب ها: رشته ها، آرایه های کاراکتری، رشته، char، character، رشته های کاراکتری، کاراکتر، 25، string of characters، آرایه،
- کل صفحات:0
تبلیغات
