Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Длина строки
Для вычисления длины строки используется функция
Функция возвращает длину строки, не включая нуль-символ. Как всегда, следите за тем, чтобы в выделенной под string памяти все же нашелся такой символ. В противном случае функция выйдет за пределы выделенной памяти и все будет плохо. Напомню, что для определения длины строки функции придется последовательно обратиться ко всем ее символам до нуль-символа, а значит, потенциально эта операция довольно дорогая. Поэтому, не следует использовать эту функцию в циклах, то есть вместо
больше подойдет примерно такой код:
В заголовочных файлах < stdlib.h> и < cstdlib> содержатся полезные функции преобразования строк в числа: Доступно целое семейство функций atof, atoi, atol и itoa, ltoa. Все они очень похоже между собой. Функции из первой группы преобразуют строку в число (float, int или long) в зависимости от окончания. Функции из второй группы выполняют обратное преобразование. Функции из второй группы не входят в стандарт С, однако они весьма удобны и доступны на некоторых платформах. Прототипы функций из первой группы:
Признаком конца числа служит первый символ, который не может быть интерпретирован как принадлежащий числу. если преобразование не удалось возвращается 0.
char a[]=”10) Рост – 162, вес – 63.5кг”; int num = atoi(a); long height = atol(& a[11]); double weigth = atof(& a[25]); Пробелы и табуляции в начале строки пропускаются. Преобразование прекращается при встрече недопустимого символа или конца строки. Если строку нельзя преобразовать в число, возвращается 0. Вторая группа:
Функции из второй группы могут создавать строковое представление чисел в любой системе (по любому основанию) от 2 до 36. Основание передается в третьем параметре. Чтобы получить строковое представление числа в десятичной системе, передайте 10. Функции возвращают указатель на строку.
Пример:
Для хранения отдельных символов используются переменные типа char. Их ввод вывод может выполнятся функциями getchar() и putchar() char c; c=getchar(); putchar(c); Для работы с символами в стандартной библиотеке (заголовочные файлы < ctype.h> и < cctype>) есть следующие функции:
|