Како користити функцију субстр () у Ц ++

How Use Substr Function C



Начин изрезивања било ког дела из низа назива се подниз. Функција субстр () постоји у Ц ++ за генерисање новог низа исецањем одређеног дела из низа. Тхе стринг.х Да бисте користили ову функцију, потребно је укључити датотеку библиотеке. Ова функција има два аргумента. Први аргумент садржи почетну позицију новог низа, а други аргумент садржи дужину низа. Начин коришћења функције субстр () у Ц ++ је објашњен у овом водичу.

Предуслов

Пре него што проверите примере овог водича, морате да проверите да ли је компајлер г ++ инсталиран или није у систему. Ако користите Висуал Студио Цоде, инсталирајте потребна проширења за компајлирање изворног кода Ц ++ за креирање извршног кода. Овде је апликација Висуал Студио Цоде коришћена за компајлирање и извршавање кода Ц ++.







Синтакса

стринг субстр (сизе_т пос = 0, сизе_т лен = нпос) цонст;



Овде први аргумент садржи почетну позицију одакле ће подниз започети, а други аргумент садржи дужину подниза. Функција ће вратити подниз ако су дати ваљани почетни положај и дужина. Различите употребе ове функције показале су се у следећем делу овог водича.



Пример 1: Једноставна употреба субстр ()

Следећи пример приказује најчешће и једноставно коришћење функције субстр (). Креирајте Ц ++ датотеку са следећим кодом да бисте генерисали подниз од вредности низа. Низ више речи је додељен променљивој стринга. Затим, ваљана почетна позиција и дужина подниза имају вредности аргумента функције субстр (). Оригинални низ и подниз ће бити одштампани након извршавања кода.





// Укључује неопходне библиотеке
#инцлуде
#инцлуде


интглавни() {
// Дефинисање стринг променљиве
сати::низоригиналстр=„Добро дошли у Линукхинт“;
// исећи подниз помоћу субстр ()
сати::низневстр=оригиналстр.субстр (Једанаест,9);
// Штампа оригинални низ
сати::цена <<„Оригинални низ је:“ <<оригиналстр<< ' н';
// Штампа подниз
сати::цена <<'Подниз је:' <<невстр<< ' н';

повратак 0;
}

Излаз:

Према коду, оригинални низ је „ Добро дошли у ЛинукХинт ‘. 11 је дао почетну позицију подниза која је позиција знака „Л“, а 9 је дао вредност дужине подниз. ' ЛинукХинт ‘Се вратио као излаз функције субстр () након извршавања кода.



Пример 2: Коришћење субстр () на основу положаја одређеног низа

Следећи код ће генерисати подниз након претраживања позиције одређеног низа. Направите Ц ++ датотеку са следећим кодом да бисте је тестирали. Вредност низа више речи је дефинисана у коду. Затим се позиција одређеног низа претражује у главном низу помоћу функције финд (). Функција субстр () је коришћена за генерисање подниза почевши од почетка низа до вредности позиције коју ће функција финд () вратити.

// Укључује неопходне библиотеке
#инцлуде
#инцлуде
Користећи именски просторсати;

интглавни()
{
сати::низстрДата= 'Волим програмирање на Ц ++';

// Хајде да пронађемо позицију '-' помоћу стр.финд ()
интположај=стрДата.пронаћи('програмирање');

// Добићемо подниз до овог обрасца
сати::низневстр=стрДата.субстр(0, положај);

сати::цена <<стрДата<< ' н';
сати::цена <<невстр<< ' н';

повратак 0;
}

Излаз:

Према коду, главна вредност низа је, Волим програмирање на Ц ++ а вредност низа за претраживање је „ програмирање ' који постоји у главном низу. Дакле, излаз је: Волим Ц ++ ‘Након извршавања кода.

Пример 3: Коришћење субстр () са руковањем изузетком

Функција субстр () је коришћена са руковањем изузецима у следећем коду. Изузетак ће бити генерисан ако је неважећа почетна позиција дата у функцији субстр (). Направите Ц ++ датотеку са следећим кодом да бисте је тестирали. У блоку три додељена је вредност низа једне речи, а неважећа почетна позиција је коришћена у функцији субстр () која ће покренути изузетак и одштампати поруку о грешци.

// Укључује неопходне библиотеке
#инцлуде
#инцлуде

интглавни() {
покушати{

// Дефинисање стринг променљиве
сати::низоригиналстр='Линукхинт';
// исећи подниз помоћу субстр ()
сати::низневстр=оригиналстр.субстр (Једанаест,9);
// Штампа подниз
сати::цена <<'Подниз је:' <<невстр<< ' н';
}
улов (цонстсати::ван домета) {
сати::церр << 'Позиција је ван домета. н';
}
повратак 0;
}

Излаз:

Према коду, главна вредност низа је, ЛинукХинт а вредност почетне позиције је 11 која не постоји. Дакле, изузетак је генерисан, а порука о грешци је одштампана након извршавања кода.

Пример 4: Коришћење субстр () за раздвајање низа

Следећи пример приказује употребу функције субстр () за дељење низа на основу граничника. Функција финд () је коришћена за претраживање позиције разграничења, а функција ерасе () је коришћена за уклањање подељеног низа са делимитером из главног низа. Петља „вхиле“ користила се за проналажење свих позиција разграничитеља у главном низу и складиштење подељене вредности у векторски низ. Затим су одштампане вредности векторског низа.

// Укључује неопходне библиотеке
#инцлуде
#инцлуде
#инцлуде

интглавни(){
// Дефинишите низ
сати::низстрингДата= 'ПХП: Ц ++: Питхон:';
// Дефинишите сепаратор
сати::низсепаратор= ':';
// Проглашавамо векторску променљиву
сати::векторјезици{};
// Проглашавамо целобројну променљиву
интположај;
// Проглашавамо стринг променљиву
сати::низоутстр;
/ *
Поделите низ помоћу функције субстр ()
и додавање раздвојене речи у вектор
* /

док ((положај=стрингДата.пронаћи(сепаратор)) !=сати::низ::нпос) {
језици.потисне(стрингДата.субстр(0, положај));
стрингДата.избрисати(0, положај+сепаратор.дужине());
}
// Одштампајте све раздвојене речи
за (цонст ауто &оутстр:језици) {
сати::цена <<оутстр<<сати::ендл;
}
повратак 0;
}

Излаз:

Према коду, главна вредност низа је ПХП: Ц ++: Питхон а вредност граничника је „ : ' . Следећи излаз ће се појавити након извршавања горње скрипте.

Закључак

Главна сврха коришћења функције субстр () је да преузме подниз из низа помињући почетну позицију и дужину подниза. Различите употребе ове функције објашњене су у овом водичу коришћењем више примера који помажу новим корисницима Ц ++ да је правилно користе у свом коду.