Слайд 2Константи-рядки
Рядкова константа – перелік символів,
записаної в подвійних лапках. Вона має
                                                            
                                    
тип
char[].
Запис рядкових констант.
"This is character string"
"Це рядкова константа"
"A" "1234567890" "0"
                                    "$"
                                
                            							
														
						 
											
                            Слайд 3Cимвольні рядки
char m1[ ]=“Один рядок."; 
Ідентично:
	char m1[ ]={‘О',‘д',‘и',‘н',‘ ',‘р',‘я',‘д', ‘о',‘к',
                                                            
                                    
,'.','\0'}
char title[64] = "Учимся п";
Розміщення рядка в пам’яті:
 
                                                                    
                            							
														
						 
											
                            Слайд 4Введення-виведення рядків
gets (char *s ) - прочитати рядок
fgets (char *s,
                                                            
                                    
int n, FILE *stream) - прочитати рядок, включаючи символ нового
                                    рядка 
puts - записати рядок. В кінці рядка записується символ нового рядка.
 fputs(char *s, FILE *stream ) - записати рядок у файл 
cin. get(char s[], розмір, символ-роздільник) - символ розриву рядка залишається в буфері
cin. getline(char s[], розмір, , символ-роздільник) – видаляє з буфера символ розриву рядка
                                
                            							
														
						 
											
                            Слайд 5Використання cin для зчитування рядка 
з клавіатури 
#include  
                                                            
                                    
// Потокове введення-виведення 
#include   // Консольний режим роботи
                                    
using namespace std;  
// Використання стандартного простору імен 
int main() 
{ char str[80]; 
cout << "Введіть рядок: "; cin >> str; 
 // Зчитуємо рядок з клавіатури. 
cout << " Ваш рядок: "; 
cout << str; 
getch(); return 0; 
} 
                                
                            							
														
						 
											
                            Слайд 6Використання функції gets() для зчитування рядка з клавіатури.
#include  
                                                            
                                    
// Потокове введення-виведення 
#include   
// Підтримка системи введення-виведення
                                    
#include   // Консольний режим роботи
using namespace std;  
// Використання стандартного простору імен 
int main() 
{ char str[80]; 
cout << "Введіть рядок: "; gets(str); 
// Зчитуємо рядок з клавіатури. 
cout << "Ось Ваш рядок: "; 
cout << str; 
getch(); return 0; } 
                                
                            							
														
						 
											
											
											
											
											
                            Слайд 11Обробка рядків
#include 
strcpy - копіювати рядок s2 в рядок s1.
char
                                                            
                                    
*strcpy(s1,s2); //char *s1, *s2; 
int main(void)
{char string[10];  char *str1
                                    = "abcdefghi";  strcpy(string, str1);  printf("%s\n", string);  getch();  return 0;} 
strncpy – копіювати не більше n символів рядка s2
char *strncpy(s1,s2,n) 
                                
                            							
														
						 
											
                            Слайд 12Обробка рядків
strcat – об'єднати два рядки
char *strcat(s1,s2);  //char *s1,
                                                            
                                    
*s2; 
int main(void)
{char d [25];  
char *b = "
                                    ", *c = "C++", *t = “Borland";
strcpy(d, t);  strcat(d, b);
strcat(d, c);  printf("%s\n", d);  getch();  return 0;} 
                                
                            							
														
						 
											
                            Слайд 13Обробка рядків
strncat – об'єднати два рядки, де із другого рядка
                                                            
                                    
копіювати не більше n символів. 
char *strncat(s1,s2,n); //char *s1, *s2;int
                                    n; 
int main(void)
{char destination[25];  char *source = "structured ";  strcpy(destination, "programming");  strncat(destination, source, 8);  
  printf("%s\n", destination);  getch();  return 0;} 
                                
                            							
														
						 
											
                            Слайд 14Обробка рядків
strcmp – порівняти два рядки в лексикографічному порядку.
int strcmp(s1,s2);
                                                            
                                    
//char *s1, *s2; 
int main(void)
{  char *buf1 = "aaa",
                                    *buf2 = "bbb", *buf3 = "ccc";  int ptr;  clrscr();  ptr = strcmp(buf2, buf1);  
  if (ptr > 0)   printf("buffer 2 більше buffer 1\n");  else if (ptr < 0) printf("buffer 2 меньше buffer 1\n"); else printf("buffer 2 и buffer 1 рівні\n");
 getch();  return 0;} 
strncmp –порівняти перші n символів двох рядків 
int strncmp(s1,s2, n); //char *s1, *s2;int n; 
                                
                            							
														
						 
											
                            Слайд 15Обробка рядків
strlen – визначити довжину рядка.
 int strlen(s); //char *s;
                                                            
                                    
int main(void)
{char *string = "Borland International";  printf("%d\n", strlen(string)); 
                                    getch();  return 0;} 
                                
                            							
														
						 
											
                            Слайд 16Обробка рядків
strchr - знайти в рядку перше входження символу с.
                                                            
                                    
       char *strchr(s,c); 
                                     //char *s;int n;
  int main(void)
{char string[20];  char *ptr, c = ‘о';  
strcpy(string, "Тестовий рядок");
ptr = strchr(string, c);  
if (ptr) 	 printf("Символ %c знаходиться в позиції: %d\n", c, ptr);  
else  printf("Такий символ не знайдено");  getch();  return 0;} 
strrchr - знайти в рядку останнє входження символу с.
 char *strrchr(s,c);  // char *s; int c;
                                
                            							
														
						 
											
                            Слайд 17Обробка рядків
strpbrk - знайти в рядку s1 будь-який символ із
                                                            
                                    
рядка s2.
char *strpbrk(s1,s2); //char *s1, *s2; 
int main(void)
{char *string1 =
                                    "abcdefghijklmnopqrstuvwxyz";  char *string2 = "onm";  char *ptr;  
ptr = strpbrk(string1, string2);  
if (ptr) printf("Перший символ: %c\n",	*ptr);  else   printf("Символи не знайдено\n");  getch();return 0;} 
                                
                            							
														
						 
											
                            Слайд 18Обробка рядків
strtok - виділити з рядка s1 лексеми, розділені кожним
                                                            
                                    
із множини символів, що входять у рядок s2.
int main(void)
{clrscr(); 
                                    
char input[] = "abc,d";  char *p;  
p = strtok(input, ",");  if (p) printf("%s\n", p);  p = strtok(NULL, ",");  if (p)  printf("%s\n", p);  getch();  return 0;}