Главная Контакты


  На сайте

  Java, JavaScript
  Документация Perl
  Документация PHP
  Документация ASP
  Новости сайта
  Flash
  Интернет протоколы
  Apache
  Уроки программирования
  Язык программирования C
 


Типы, операторы и выражения


Каждый раз, как найдено не-c, его копироваться на текущей позиции j, и только после этого j увеличены, чтобы быть готовым к следующему знаку. Это точный эквивалент
if (s [i]! = c) {
s [j] = s [i];
j + +;
}

Другой пример подобной конструкции происходит из функции getline, которую мы написали в Разделе 1, где мы можем заменить
if (c == '\ n') {
s [i] = c;
+ + I;
}
на компактнее
if (c == '\ n')
s [i + +] = c;


В качестве третьего примера, рассмотрим стандартную функцию strcat (s, t), которая сцепляющее цепочку t с концом цепочки s. strcat предполагает, что s имеет достаточно места, чтобы сохранить комбинацию обеих цепочек. Так, как мы это написали, strcat не возвращает никакого значения; версия со стандартной библиотеки возвращает указатель на полученный цепочку.
/ * Strcat: сцепляющее t с концом s; s должен быть достаточно большим * /
void strcat (char s [], char t [])
{
int i, j;

i = j = 0;
while (s [i]! = '\ 0') / * находит конец s * /
i + +;
while ((s [i + +] = t [j + +])! = '\ 0') / * копирует t * /
;
}

Одновременно с копированием t до s к ним применено постфиксный + +, чтобы удостовериться, что они в позиции для последующего прохождения через цикл.

Упражнение 2-4. Напишите альтернативную версию squeeze (s1, s2), которая бы излучала каждый знак с s1, который совпадает с любым знаком s2.

Упражнение 2-5. Напишите функцию any (s1, s2), которая возвращает первое положение в цепочке s1 одного из знаков цепочки s2, или -1, если ни не найдено. (Функция strpbrk из стандартной библиотеки осуществляет то же, только возвращает указатель на положение.)

Другие статьи по теме:

- Типы, операторы и выражения
- Внешние переменные и область действия
- Введение в c++
- Функции и структура программ
- Символьные массивы


Голосование:
Чего Вы хотели бы видеть больше на сайте?

Статей, документации
Скриптов
Программ для вебмастера
Я не знаю



Другие голосования

Обмен кнопочками:



Приглашаем Вас обменяться кнопочками! Обращайтесь к администратору.


Новые статьи:


Наши партнеры:





2006-2024 © SMTI.RU
Главная страница | Связаться с нами