Тема: Як в циклі правильно прописати вже кінець рядка?

Як в циклі правильно прописати вже кінець рядка?

for(i = 0; str1[i] != вже кінець рядка; i++) {str2[i] = str1[i];

2

Re: Як в циклі правильно прописати вже кінець рядка?

Якщо було оголошено char *str1 або char str1[nn], то

str1[i] != '\0'
Подякували: Дмитро-Чебурашка1

Re: Як в циклі правильно прописати вже кінець рядка?

Спасибі!!  Зараз спробую

4 Востаннє редагувалося Дмитро-Чебурашка (03.05.2015 13:59:55)

Re: Як в циклі правильно прописати вже кінець рядка?

Ні щось не те..    Ось наприклад якщо char str1 [ ] = "1234567890" або "Маша"  то як?

Post's attachments

mass1.bmp 1.37 mb, 523 downloads since 2015-05-03 

Re: Як в циклі правильно прописати вже кінець рядка?

Зараз я помиркую..   Щось не пойму.  Здається змінна int i;  зростає надзвичайно..    Може я таки десь наплутав, зараз я..

Re: Як в циклі правильно прописати вже кінець рядка?

Вибачте!   Все гаразд!!

7

Re: Як в циклі правильно прописати вже кінець рядка?

for(i = 0; i<strlen(str1); i++)

strlen() - повертає довжену рядка

Подякували: Дмитро-Чебурашка1

Re: Як в циклі правильно прописати вже кінець рядка?

Дякую!   Теж дуже гарний засіб.

9 Востаннє редагувалося Дмитро-Чебурашка (03.05.2015 15:22:06)

Re: Як в циклі правильно прописати вже кінець рядка?

Я чомусь вирішив що так не можливо, тобто сам із собою
помислив і такий та ні, strlen не піде!   Навить не спробував й не став думати.

10 Востаннє редагувалося P.Y. (03.05.2015 15:58:55)

Re: Як в циклі правильно прописати вже кінець рядка?

Betterthanyou написав:
for(i = 0; i<strlen(str1); i++)

strlen() - повертає довжену рядка

Можна й так, але це буде повільніше: strlen не бере звідкись наперед записану довжину, а просто перераховує символи рядка, доки не наткнеться на нуль-символ. А оскільки це відбувається щоразу при перевірці умови циклу, ми отримуємо, фактично, цикл у циклі. Оптимізований варіант з використанням strlen (вважаємо, що довжина рядка str1 у тілі циклу не змінюється):

int l=strlen(str1);
for(i = 0; i<l; i++)

11

Re: Як в циклі правильно прописати вже кінець рядка?

Дмитро-Чебурашка написав:

Я чомусь вирішив що так не можливо, тобто сам із собою
помислив і такий та ні, strlen не піде!   Навить не спробував й не став думати.

Розкажіть детальніше що вас не влаштовує в strlen ?