Шта су стрингови у Ц програмирању?

Sta Su Stringovi U C Programiranu



У програмском језику Ц, жице су начин представљања групе ликова. Они су неопходни јер омогућавају програмерима да раде са текстуалним подацима у својим програмима. За разлику од неких других програмских језика, Ц нема уграђени низ података. Уместо тога, низови се креирају помоћу низова знакова.

У овом чланку ћемо објаснити шта су стрингови у Ц-у, како су декларисани и како их применити у Ц програмирању.

Шта су стрингови у Ц програмирању?

Стрингови су једнодимензионални низови који се завршавају нулл \0 карактера. Користе се за чување знакова и текстова и сваки знак у низу заузима један бајт меморије. За разлику од других програмских језика, Ц нема име типа података као стринг, уместо тога, податке чувате у цхар тип.







Како декларисати стрингове у Ц програмирању?

У Ц програмирању можете декларисати стринг користећи следеће методе:



Можете доделити низ са унапред дефинисаном величином. На пример, стринг са ограниченом величином од 8 знакова треба да буде декларисан као:



цхар тест [ 8 ] = 'Добродошли' ;

Други метод за додељивање стринга у Ц је без дефинисања величине низа:





цхар тест [ ] = 'Добродошли' ;

Такође можете доделити стринг користећи низ знакова са дефинисаном величином:

цхар тест [ 8 ] = { 'ИН' , 'То је' , 'л' , 'ц' , 'О' , 'м' , 'То је' , ' \0 ' } ;

Или можете доделити стринг низу знакова тако што ћете га иницијализовати знак по знак без дефинисане величине:



цхар тест [ ] = { 'ИН' , 'То је' , 'л' , 'ц' , 'О' , 'м' , 'То је' , ' \0 ' } ;

Тхе нулти знак „\0“ представља крај низа. Да бисте одредили где се стринг завршава, важно је додати нулти карактер на крају сваког.

Меморијски приказ горњег низа ће бити следећи:

Индекс 0 1 2 3 4 5 6 7
Променљива ИН То је л ц О м То је \0

У Ц-у се нулти карактер користи да одреди где се стринг завршава. Ако нул карактер није присутан, ове функције ће наставити да обрађују меморију након краја стринга, што може довести до неочекиваног понашања кода.

Следи комплетан Ц програмски код за штампање стринга.

#инцлуде <стдио.х>

инт главни ( ) {

цхар тест [ 8 ] = { 'ИН' , 'То је' , 'л' , 'ц' , 'О' , 'м' , 'То је' , ' \0 ' } ;

принтф ( „Излаз је: %с ' , тест ) ;

повратак 0 ;

}

Горњи програм декларише тест низа знакова величине 8 и иницијализује га знаковима 'Добродошли' , и „\0“ . Затим користи принтф() функција за штампање стринга сачуваног у тесту.

Излаз

Узмите унос стринга од корисника у Ц програмирању

Такође можете узети улазни низ од корисника користећи сцанф() функцију и за то морате да дефинишете величину низа стрингова. Следи пример кода за узимање уноса од корисника:

#инцлуде <стдио.х>

инт главни ( )

{

цхар име [ 10 ] ;

принтф ( 'Унесите име:' ) ;

сцанф ( '%с' , име ) ;

принтф ( 'Унесено име је: %с.' , име ) ;

повратак 0 ;

}

Горњи програм тражи од корисника да унесе име, чита га од корисника помоћу функције сцанф() и чува га у називу низа знакова. Затим користи функцију принтф() да одштампа унето име.

Излаз

Прочитајте стринг или ред текста у Ц програмирању

Можете користити фгетс() функција за читање стрингова како се користи за читање реда текста из наведеног улазног тока и складиштење у низ знакова. Доле написани код је пример таквог случаја:

#инцлуде <стдио.х>

инт главни ( ) {

цхар линија [ педесет ] ;

принтф ( 'Унесите ред текста: ' ) ;

фгетс ( линија , величина ( линија ) , стдин ) ;

принтф ( „Унели сте: %с“ , линија ) ;

повратак 0 ;

}

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

Излаз

Често коришћене стринг функције

Низови у Ц програмирању подржавају различите функције које се могу користити у програмима за обављање различитих радњи. Неке од функција које подржава стринг у Ц су наведене у наставку:

Назив функције Сврха функције
стрцат(а1,а2); Додаје садржај низа а2 на крај низа а1. Након операције, резултујући низ ће бити сачуван у а1.
стрцпи(а1,а2); Ова функција копира садржај стринга а2 у стринг а1. Након операције, а1 ће садржати тачну копију а2, укључујући завршни нул карактер.
стрлен(а1); Враћа дужину стринга а1, тј. укупан број знакова који се налазе у стрингу пре последњег завршног или нултог карактера.
стрцхр(а1,цх1); Ова функција помера показивач на прво појављивање карактера цх1 у низу а1. Ова функција враћа нулл показивач ако цх1 није пронађен у низу а1.

Белешка: Ц обезбеђује стандардну библиотеку тзв <стринг.х> који пружа различите функције за рад са стринговима у Ц. Ове функције укључују операције као што су копирање стрингова, спајање стрингова и још много тога.

Закључак

Стринг је колекција линеарног низа у Ц програмима. Сваки знак чува један бајт и представљен је двоструким наводницима. Ц обезбеђује стандардну библиотеку <стринг.х> и можете лако да обављате компликоване задатке помоћу стринг функција. У горњем водичу смо разговарали о различитим начинима за декларацију стринга и иницијализацију. Такође смо демонстрирали прослеђивање стринга функцији са примером кода.