Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 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.

Date: 2015-11-13; view: 312; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.007 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию