cpp:strings
This is an old revision of the document!
Table of Contents
Αλφαριθμητικά
Τα αλφαριθμητικά μπορούν να αναπαρασταθούν με δύο τρόπους
- Μέσω μιας ακολουθίας χαρακτήρων που περιέχει το χαρακτήρα '\0' στο τέλος.
- Μέσω της κλάσης string.
Aκολουθία χαρακτήρων που περιέχει το χαρακτήρα '\0' στο τέλος
char str[12] = "Hello";
ή
char str[12] = { 'H', 'e', 'l', 'l', 'o', '\0' };
Στη C++ είναι διαθέσιμες οι συναρτήσεις διαχείρισης συμβολοσειρών που προέρχονται από τη C, όπως οι παρακάτω:
char *strcpy(char *dest, const char *src); | Αντιγράφει το src στο dest . Τα αλφαριθμητικά δεν πρέπει να επικαλύπτονται μεταξύ τους και θα πρέπει να υπάρχει αρκετός διαθέσιμος χώρος στο dest ώστε να αντιγραφεί το src χωρίς να βγούμε εκτός ορίων. |
char *strcat(char *dest, const char *src); | Ενθέτει το src αμέσως μετά το dest . Αποθηκεύει το αποτέλεσμα στο dest . Τα αλφαριθμητικά δεν πρέπει να επικαλύπτονται μεταξύ τους και θα πρέπει να υπάρχει αρκετός διαθέσιμος χώρος στο dest για το προκύπτον αλφαριθμητικό. |
int strcmp(const char *s1, const char *s2); | Συγκρίνει τα s1 και s2 μεταξύ τους και επιστρέφει μικρότερο, μεγαλύτερο ή ίσο με το μηδέν εάν το s1 είναι μικρότερο μεγαλύτερο ή ίσο με το s2 . |
size_t strlen(const char *s); | Επιστρέφει τον αριθμό των χαρακτήρων (μήκος) του αλφαριθμητικού. |
char *strchr(const char *str, int c); | Επιστρέφει ένα δείκτη στην πρώτη εμφάνιση του c στο str . Eπιστρέφει NULL εάν δεν εμφανίζεται το c στο str . |
char *strrchr(const char *str, int c); | Επιστρέφει ένα δείκτη στην τελευταία εμφάνιση του c στο str . Eπιστρέφει NULL εάν δεν εμφανίζεται το c στο str . |
char *strstr(const char *haystack, const char *needle); | Επιστρέφει ένα δείκτη στην πρώτη εμφάνιση του needle στο heystack . Eπιστρέφει NULL εάν δεν εμφανίζεται το needle στο heystack . |
char *strstr(const char *haystack, const char *needle); | Επιστρέφει ένα δείκτη στην τελευταία εμφάνιση του needle στο heystack . Επιστρέφει NULL εάν δεν εμφανίζεται το needle στο heystack . |
Η κλάση String
cpp/strings.1493736317.txt.gz · Last modified: 2017/05/02 13:45 (external edit)