![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Определение строкиСтр 1 из 7Следующая ⇒
Цель работы По некоторым оценкам, до 70% машинного времени тратится на работу с текстовыми строками [1, с. 139], что свидетельствует о важности этого типа данных. В то же время в языке Си специальный строковый тип отсутствует, хотя наличествует достаточно богатый набор функций обработки строк. Строка может быть смоделирована различными способами, причем в большей части случаев за многими деталями должен следить программист. Поэтому работа со строками в Си требует особой тщательности. Цель лабораторной работы состоит в формировании умений: - использовать различные способы описания и формирования строк; - понимать и формулировать принципиальные различия этих способов; - обрабатывать строки различными способами. Основные положения Определение строки Специальный строковый тип в языке Си отсутствует. Строка в Си представляется одномерным массивом элементов типа char; последним элементом массива должен быть символ ‘\0’ – нуль-терминатор. Такой массив называется ASCIIZ – строкой. Нуль-терминатор представляет собой символ с кодом 0 в таблице кодов и определяет конец строки; если он отсутствует, то обработка строки может продолжаться сколь угодно долго. Строковая константа (или строковый литерал) представляет собой конструкцию:
К такой последовательности символ ‘\0’ компилятор добавляет автоматически. Если внутри строки нужно использовать символ “, то его кодируют как \” (\ экранирует “). Символ ‘\0’ проставляется в конце символьной последовательности (массива) автоматически, если: - эта последовательность представляет собой строковый литерал; - последовательность вводится функцией ввода строки gets (fgets) или функцией scanf (fscanf) в формате %s: scanf(“%s ”, < имя строки >). Во всех остальных случаях программист должен заботиться о конце строки сам.
|