Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Основные функции стандартной библиотеки string.h
Основные функции стандартной библиотеки string.h приведены в таблице.
Пример использования функций
Пример использования функций #include <stdio.h> char m1[80] = "Первая строка"; char m2[80] = "Вторая строка"; char m3[80]; system("chcp 1251"); system("cls"); strncpy(m3, m1, 6); // не добавляет '\0' в конце строки puts("Результат strncpy(m3, m1, 6)"); puts(m3); strcpy(m3, m1); puts("Результат strcpy(m3, m1)"); puts(m3); puts("Результат strcmp(m3, m1) равен"); printf("%d", strcmp(m3, m1)); strncat(m3, m2, 5); puts("Результат strncat(m3, m2, 5)"); puts(m3); strcat(m3, m2); puts("Результат strcat(m3, m2)"); puts(m3); puts("Количество символов в строке m1 равно strlen(m1): "); printf("%d\n", strlen(m1)); strnset(m3, 'f', 7); puts("Результат strnset(m3, 'f', 7)"); puts(m3); strset(m3, 'k'); puts("Результат strnset(m3, 'k')"); puts(m3); getchar(); return 0;
Упражнения: 1. Удаление лишних пробелов в строке 2. Вывести символы до символа «;» 3. Определить сколько раз в строке появляется символ 4. Удалить символы, стоящие в скобках, предполагается, что пара скобок одна. 5. Посчитать количество слов, начинающихся на букву А
Процедуры и функции
Много раз мы уже использовали различные функции в работе. Например, функция strlen(s). Результатом работы этой функции является количество символов в строке s. В данном случае s – это аргумент функции. Количество символов в строке – результат функции или возвращаемое значение. Мы с вами можем писать свои собственные функции и помещать их в свои собственные библиотеки.
Для этого обязательно нужно указать: 1. Тип результата функции; 2. Имя функции; 3. Информацию об аргументах функции; 4. Тело функции. Синтаксис следующий: ТипВозвращаемогоЗначения ИмяФункции(СписокФормальныхАргументов) { ТелоФункции; ... return(ВозвращаемоеЗначение); }
Для чего используют функции: 1. Если какой-то фрагмент кода встречается несколько раз, то его лучше поместить в функцию и вызывать из текста основной программы. Это упростит код. 2. Память под переменные, которые используются в функциях выделяется только в момент обращения к функции и высвобождается после завершения ее работы. Вызов функции осуществляется из основного текста программы следующим способом: переменная = ИмяФункции(СписокФактическихАргументов); Как только в программе зафиксирован вызов функции, управление передается телу функции. В ходе выполнения тела функции, получаем некоторый результат, который необходимо вернуть в тело основной программы. Для этого предназначен оператор return. Оператор return говорит о том, что выполнение функции надо завершить. Оператор return может находится не только в конце функции. Тип функции и тип результата должны совпадать. Оператор return может отсутствовать совсем. Тогда функция называется процедурой и тип возвращаемого ей значения указывается void. Пример Посчитать сумму двух чисел. #include <stdio.h>
int sum(int x, int y) { int k; k = x + y; return(k);}
int main() { int a, r; printf("a= "); scanf("%d",&a); r = sum(a, 5); // вызов функции: x=a, y=5 printf("%d + 5 = %d",a, r); getchar();getchar(); return(0); Пользовательские функции должны быть определены до главной функции main. Функцию можно разместить и после главной функции, но тогда необходимо до главной функции объявить прототип будущей пользовательской функции. Пример #include <stdio.h> int main() { int a, r; printf("a= "); scanf("%d",&a); r = sum(a, 5); // вызов функции: x=a, y=5 printf("%d + 5 = %d",a, r); getchar();getchar(); return 0; int sum(int x, int y) { int k; // семантика k = x + y; return(k);}
|
|||||||||||||||||||||||||
Последнее изменение этой страницы: 2017-02-10; просмотров: 433; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.162.247 (0.008 с.) |