НАЙКРАЩИЙ САЙТ ДЛЯ ВЕБ-РОЗРОБНИКІВ
Мова програмування C. Уроки W3Schools для початківців українською мовою

En Es De

C Рядки


Рядки

Рядки використовуються для зберігання тексту/символів.

Наприклад, "Hello World" — це рядок символів.

На відміну від багатьох інших мов програмування, мова C не має рядкового типу для легкого створення рядкових змінних. Натомість ви повинні використовувати тип char і створити масив символів, щоб створити рядок у C:

char greetings[] = "Hello World!";

Зверніть увагу, що ви повинні використовувати подвійні лапки ("").

Щоб вивести рядок, ви можете використати функцію printf() разом зі специфікатором формату %s, щоб повідомити C, що ми зараз працюємо з рядками:

Приклад

char greetings[] = "Hello World!";
printf("%s", greetings);
Спробуйте самі »

Доступ до рядків

Оскільки рядки насправді є масивами в C, ви можете отримати доступ до рядка, посилаючись на його індексний номер у квадратних дужках [].

У цьому прикладі друкується перший символ (0) у greetings (вітаннях):

Приклад

char greetings[] = "Hello World!";
printf("%c", greetings[0]);
Спробуйте самі »

Зауважте, що нам потрібно використовувати специфікатор формату %c, щоб надрукувати один символ.


Змінити рядки

Щоб змінити значення певного символу в рядку, зверніться до номера індексу та використовуйте одинарні лапки:

Приклад

char greetings[] = "Hello World!";
greetings[0] = 'J';
printf("%s", greetings);
// Виведе Jello World! замість Hello World!
Спробуйте самі »

Перебрати рядок

Ви також можете перебирати символи рядка за допомогою циклу for:

Приклад

char carName[] = "Volvo";
int i;

for (i = 0; i < 5; ++i) {
  printf("%c\n", carName[i]);
}
Спробуйте самі »

І, як ми вказали в розділі про масиви, ви також можете використовувати формулу розміру (замість того, щоб вручну записувати розмір масиву в циклі умови (i < 5)), щоб зробити цикл більш стійким:

Приклад

char carName[] = "Volvo";
int length = sizeof(carName) / sizeof(carName[0]);
int i;

for (i = 0; i < length; ++i) {
  printf("%c\n", carName[i]);
}
Спробуйте самі »

Інший спосіб створення рядків

У наведених вище прикладах ми використовували "рядковий літерал", щоб створити рядкову змінну. Це найпростіший спосіб створити рядок у C.

Слід також зауважити, що ви можете створити рядок із набором символів. Цей приклад дасть той самий результат, що й приклад на початку цієї сторінки:

Приклад

char greetings[] = {'H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd', '!', '\0'};
printf("%s", greetings);
Спробуйте самі »

Чому ми включаємо символ \0 у кінці? Він відомий як "нульовий кінцевий символ", і його потрібно включити під час створення рядків за допомогою цього методу. Він повідомляє C, що це кінець рядка.


Відмінності

Різниця між двома способами створення рядків полягає в тому, що перший спосіб легше написати, і вам не потрібно включати символ \0, оскільки C зробить це за вас.

Зауважте, що розмір обох масивів однаковий: вони обидва містять 13 символів (до речі, пробіл також вважається символом), включаючи символ \0:

Приклад

char greetings[] = {'H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd', '!', '\0'};
char greetings2[] = "Hello World!";

printf("%lu\n", sizeof(greetings));   // Outputs 13
printf("%lu\n", sizeof(greetings2));  // Виведе 13
Спробуйте самі »

Приклад із реального життя

Використовуйте рядки для створення простого вітального повідомлення:

Приклад

char message[] = "Good to see you,";
char fname[] = "John";

printf("%s %s!", message, fname);
Спробуйте самі »

C Вправи

Перевірте себе за допомогою вправ

Вправа:

Заповніть відсутню частину, щоб створити "рядок" під назвою greetings, і призначте йому значення "Hello".

  = ;