Создание и использование функций. Функция копирования строки в строку

   
На этом шаге мы рассмотрим особенности создания такой функции.

   
Функция сору() показана ниже:

void copy(char save[],char line[])
{
	int i=0; 
	while((save[i]=line[i]) != '\0')
		i++;
}

   
Эта функция похожа на предыдущую (substr()), но пересылка символов начинается с нулевого элемента входного массива line[] в нулевой элемент выходного массива save[].
Цикл организован с помощью конструкции while. Поскольку на входе имеется строка символов, то она обязательно заканчивается символом \0. В условии окончания цикла имеется
выражение:

  (save[i]=line[i]) != '\0'

   
Чтобы вычислить.это выражение, потребуется, во-первых, переслать сначала i-й символ из входного массива line[] в i-й элемент выходного массива save[] и после
этого его значение проверить на совпадение с \0.

   
Если совпадения не будет, выполнится тело цикла while: индекс элемента массива возрастет на единицу, после чего станет готовым к тому, чтобы по нему переслать следующий символ из
line[] в save[]. Поскольку эта функция ничего не возвращает, то отсутствует оператор return. Как только будет передан символ \0, цикл прекратится и программа
"провалится" на закрывающую тело while фигурную скобку. Это означает, что функция завершилась.

   
На следующем шаге мы рассмотрим структуру основной программы.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий