Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Константа Код Название Действие\a 0x07 bel Звуковой сигнал \b 0x08 bs Курсор на одну позицию назад \f 0x0C ff Переход к началу (перевод формата) \n 0x0A lf Переход на одну строку вниз(перевод строки) \r 0x0D cr Возврат на первую позицию строки \t 0x09 ht Переход к позиции, кратной 8 (табуляция) \v 0x0B vt Вертикальная табуляция по строкам . \\ \' \” \? Представление символов \, ', ",? \Onn Символ с восьмеричным кодом nn \xnn Символ с шестнадцатеричным кодом nn \0 Символ с кодом 0
Некоторые программы и стандартные функции обработки символов и строк (isdigit,isalpha) используют тот факт, что цифры, прописные и строчные (маленькие и большие) латинские буквы имеют упорядоченные по возрастанию значения кодов: '0' - '9' 0x30 - 0x39 'A' - 'Z' 0x41 - 0x5A 'a' - 'z' 0x61 - 0x7A
Ниже приводится ряд фрагментов, использующих эти особенности кодирования: 1. Получить символ десятичной цифры из значения целой переменной, лежащей в диапазоне 0..9: int n; char c; c = n + '0'; 2. Получить символ шестнадцатеричной цифры из значения целой переменной, лежащей в диапазоне 0..15: if (n <=9) c = n + '0'; else c = n - 10 + 'A'; 3. Получить значение целой переменной из символа десятичной цифры: if (c >='0' && c <='9') n = c - '0'; 4. Получить значение целой переменной из шестнадцатеричной цифры: if (c >='0' && c <='9') n = c - '0'; else if (c >='A' && c <='F') c = c - 'A' + 10; 5. Преобразовать маленькую латинскую букву в большую: if (c >='a' && c <='z') c = c - 'a' + 'A';
СТРОКОЙ называется последовательность символов, ограниченная символом с кодом 0, то есть '\0'. Из ее определения видно, что она является объектом переменной размерности. Поскольку в Си допускаются переменные только фиксированной размерности, то единственным допустимым способом представления строки является массив символов. Здесь сразу проясним суть взаимоотношений между строкой и массивом символов: · строка хранится в массиве символов, массив символов может быть инициализирован строкой, а может быть заполнен программно:
char A[20] = { 'С','т','р','о','к','а','\0' }; int i; char B[80]; for (i=0; i<20; i++) B[i] = 'A'; B[20] = '\0';
· строка представляет собой последовательность, ограниченную символом '\0', поэтому работать с ней можно, просматривая ее от начала до конца, пока не встретится символ '\0': for (i=0; B[i]!='\0'; i++)... · соответствие размерности массива и длины строки транслятором не контролируется, за это несет ответственность программа (программист, ее написавший): char C[20]; // следить за переполнением массива // и ограничить строку его размерностью for (i=0; i<19 && B[i]!='\0'; i++) C[i] = B[i]; C[i]='\0';
СТРОКОВОЙ КОНСТАНТОЙ называется последовательность символов, заключенная в двойные кавычки. Допустимо использование неотображаемых символов. Строковая константа автоматически дополняется символом '\0', ею можно инициализироваться массив, в том числе такой, размерность которого определяется размерностью строки: char A[80] = "123456\r\n"; char B[] = "aaaaa\033bbbb"; ..."Это строка"...
Непосредственное использование строковых констант в выражениях связано с указателями и поэтому рассматривается в 4.1.
|