русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Пример обработки строк


Дата добавления: 2013-12-23; просмотров: 2299; Нарушение авторских прав


Strlen( )

Strcat( )

Strcpy( )

Некоторые библиотечные функции обработки строк

 

С++ поддерживает широкий диапазон функций для манипуляций со строками. Самые известные из них:

 

strcpy( )

strcat( )

strcmp( )

strlen( )

 

Все строковые функции используют один и тот же заголовок <cstring>. Рассмотрим эти функции подробнее.

 

 

Вызов этой функции выглядит таким образом:

 

strcpy (куда, откуда)

 

Функция strcpy( ) копирует содержимое строки откуда в строку куда. Не забывайте, что массив, образующий куда, должен иметь достаточный размер, чтобы в него поместилась строка откуда. Если места в нем не хватит, то произойдет выход за пределы массива куда, что скорее всего, приведет к аварийному завершению программы.

 

 

Вызов этой функции выглядит таким образом:

 

strcat(s1,s2);

 

Функция strcat() присоединяет строку s2 к концу s1; строка s2 остается без изменений. Вы должны обеспечить достаточно большой размер строки s1, чтобы она могла вместить как свое исходное содержимое, так и содержимое s2.

strcmp( )

 

Вызов этой функции выглядит таким образом:

 

strcmp(s1,s2);

 

Функция strcmp() сравнивает две строки и возвращает 0, если они равны. Если s1 больше s2 лексикографически (т. е. по порядку следования символов алфавита), возвращается положительное число; если она меньше s2, возвращается отрицательное число.

При использовании strcmp() важно иметь в виду, что при равенстве строк она возвращает false. Таким образом, если вы хотите, чтобы что-то произошло при равенстве строк, вам придется использовать оператор !. В следующем примере условие, управляющее предложением if, истинно, если str равна строке "С++":



 

if(!strcmp(str, "С++") cout << "str = С++";

 

 

Общая форма вызова функции strlen( ) такова:

 

strlen(s);

 

Здесь s — это строка. Функция strlen() возвращает длину строки, на которую указывает s.

 

 

В приводимой ниже программе используются все четыре рассмотренные выше функции обработки строк:

 

//Демонстрация строковых функций.

 

#include <iostream>

#include <cstdio>

#include <cstring> #

#include <conio>

using namespace std;

 

int main() {

char s1 [80] , s2 [80] ;

 

strcpy(s1, "С++");

strcpy(s2, " мощный язык.");

 

cout << "длины: " << strlen(s1);

cout << ' ' << strlen(s2) << '\n';

 

if(!strcmp(s1, s2))

cout << "Строки равны\n";

else cout << "не равны\n";

 

strcat(s1, s2 ) ;

cout << s1 << '\n' ;

 

strcpy(s2, s1);

cout << s1 << " и " << s2 << "\n";

 

if(!strcmp(s1, s2))

cout << "s1 и s2 теперь одинаковы.\n";

getch();

return 0 ;

}

 

Ниже приведен вывод этой программы:

 

длины: 3 22

не равны

С++ мощный язык. и С++ мощный язык

s1 и s2 теперь одинаковы

 



<== предыдущая лекция | следующая лекция ==>
Ввод строки с клавиатуры | Инициализация массивов


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.