Обработка на символни низове и променливи - живот-прог

Да представлява символ (букви) се използва вида Чар. Стойността на тип Чар е код в таблицата ASCII, съответстваща на даден знак. Този тип подразбиране овъгляване се тълкува като стойност един байта цяло число със знак, след диапазон от стойности на променливата от -128 до 128, въпреки че само стойности между 0 и 127 са символни еквивалента. Променливи от тип неподписан знак може orpedelyat стойности, вариращи 0-255.

Символичните константи са в апострофи. Символни променливи може да бъде или константи характер, които могат да бъдат отпечатани или константи за контрол, като например: въглен а = 'А', F = '\ п ";

Постоянна низ е последователност от символи, поставени в кавички ( "), като" това е първият ми низ. " В края на всеки тип низ от компилатор добавя нулев знак, представлявана от управлението на постоянна \ 0.

String променлива описан като знак во [12], квадратните скоби показват дължината на ред. Това означава, че променливата низ - масив от символи и номерацията на елементите в масива започва от нула, а броят на записите е равен на броя на знаците плюс един.

String константи могат да бъдат подредени в няколко реда. За формиране на такива низови константи може да се използва наклонена черта и след това натиснете Enter. Тази линия се смята за продължение на предишната, например, низ от знаци:

Ная символен низ "

Той е идентичен с буквената поредица "Това е един много дълъг низ от символи."

За описание на променливата на низ, можете да използвате концепцията за характера масив или указател (препратка) към масив от символи, например:

харак Mas [15]; знак * ва;

За характер / низ тип на вход / изход dnnyh да използвате не само ФОРМАТ () и scanf (), но също така и редица други функции, които са описани прототипи ите stdio.h библиотека файл, например, поставя (), puchar (), получава ( ), getchar ().

Функция вътр putchar (Чар в) показва един знак към стандартния изход поток стандартния изход без последващото преминаване към нов ред.

getchar Функцията инт () се използва за въвеждане на следващия знак от стандартния вход стандартния вход. Тази функция не изисква набор опция и отнема стойност от тип цяло число. Ако пренасочване на стандартния вход не е, тогава следващия запис от клавиатурата Xia; когато влезете в възлага на входния поток файл, името му е определен от командния ред, когато се обадите на програмата, например:

Поставя функция INT (Чар * ва) се използват за получаване на символен низ на стандартния изход. символният низ се допълва от нов ред "\ Н" и след оттеглянето на низ от знаци, поставя () функция, нова линия автоматично.

функция знак * В получава (знак * ва) чете от стандартния вход. Въвеждане продължава, докато, докато е натиснат клавиша Enter. Тази функция се допълва знаковият низ въведени от '\ 0'.

Ако номерът е представен като низ от знаци, че е възможно да се използват функциите вътр atoi на (символен низ), дълъг атол (символен низ), двойно atof (символен низ) за преобразуване на низове съответно в цяло число, дълго цяло число или реално число. Прототипи но тези функции са описани във файла за библиотеката stdlib.h. Ако низът не могат да се превърнат в брой, той се връща на нула.

В C ++, има една група от оператори за работа със символични променливи (Таблица. 8), които са описани във файла за зареждане ctype.h.

Оператори за работа с променливи знаци

Функция преобразува характер на малка буква в

За да работите с низ от знаци във файла string.h описва прототипи на няколко функции. Библиотеката е възможно копие (strcpy, strncpy), сравнявайки (strcmp, strncmp), низове (strcat, strncat), част от знака (strstr), записът в търсене на знаци (strchr, strrchr, strpbrk), определяне на дължината на низа (strlen) и Т .d. и също така съдържа особености на входните струни и отделните знаци от клавиатурата и от файл.

= "Куку"; // забр - справка парола.

// Това може да бъде описан като * забр = "куку"

за (I = 0 ;! к аз<3; i++)

получава (S); // функция на входния низ

ако (strstr (S, забр)) к = 1; // функция за сравнение струни

ако (к) ФОРМАТ ( "\ н Парола Прието");

останало ФОРМАТ ( "\ н Паролата не се приема");

Трябва да се помни, че операцията прехвърляне в друг един ред не се определя (като низ е масив), и може да се извърши с помощта на цикъл или функция на стандартната библиотека. Метод SCR линия в Цел ред илюстрира със следния пример:

овъгляване SCR [10] Цел [10];

за (INT I = 0; и<=strlen(scr); i+) dest[i]=scr[i];

// динамично разпределение на паметта в купчината.

знак * Цел = чат [10], * г = Цел;

* D = 0; // стоп състояние цикъл