Mik azok a karakterláncok a C programozásban?

Mik Azok A Karakterlancok A C Programozasban



C programozási nyelvben, húrok a karakterek egy csoportjának ábrázolásának módja. Ezek elengedhetetlenek, mert lehetővé teszik a programozók számára, hogy szöveges adatokkal dolgozzanak programjaikban. Más programozási nyelvekkel ellentétben a C nem rendelkezik beépített karakterlánc-adattípussal. Ehelyett a karakterláncok karaktertömbök segítségével jönnek létre.

Ebben a cikkben elmagyarázzuk, hogy milyen karakterláncok vannak C-ben, hogyan deklarálják őket, és hogyan valósítsuk meg őket a C programozásban.

Mik azok a karakterláncok a C programozásban?

A karakterláncok azok az egydimenziós tömbök, amelyeket a null \0 karakter. Karakterek és szövegek tárolására szolgálnak, és a karakterlánc minden karaktere egy bájtot foglal el a memóriából. A többi programozási nyelvtől eltérően a C-ben nem szerepel az adattípus neve karakterláncként, ehelyett az adatokat a char típusú.







Hogyan deklaráljunk karakterláncokat a C programozásban?

A C programozásban a következő módszerekkel deklarálhatunk egy karakterláncot:



Hozzárendelhet egy karakterláncot előre meghatározott mérettel. Például egy 8 karakteres korlátot a következőképpen kell deklarálni:



char teszt [ 8 ] = 'Üdvözöljük' ;

Egy másik módszer a karakterlánc hozzárendelésére C-ben a tömb méretének meghatározása nélkül:





char teszt [ ] = 'Üdvözöljük' ;

Egy karakterláncot egy meghatározott méretű karaktertömb használatával is hozzárendelhet:

char teszt [ 8 ] = { 'BAN BEN' , 'Ez' , 'én' , 'c' , 'O' , 'én' , 'Ez' , ' \0 ' } ;

Vagy hozzárendelhet egy karakterláncot egy karaktertömbhöz úgy, hogy karakterenként inicializálja meghatározott méret nélkül:



char teszt [ ] = { 'BAN BEN' , 'Ez' , 'én' , 'c' , 'O' , 'én' , 'Ez' , ' \0 ' } ;

A null karakter „\0” egy karakterlánc végét jelenti. Annak meghatározásához, hogy a karakterlánc hol végződik, fontos, hogy a null karaktert minden karakter végére adjuk.

A fenti karakterlánc memóriaábrázolása a következő lesz:

Index 0 1 2 3 4 5 6 7
Változó BAN BEN Ez l c O m Ez \0

A C-ben a null karaktert használják annak meghatározására, hogy a karakterlánc hol végződik. Ha a null karakter nincs jelen, ezek a függvények a karakterlánc végén túl is folytatják a memória feldolgozását, ami potenciálisan a kód váratlan viselkedéséhez vezethet.

Az alábbiakban egy teljes C programozási kód látható egy karakterlánc nyomtatásához.

#include

int fő- ( ) {

char teszt [ 8 ] = { 'BAN BEN' , 'Ez' , 'én' , 'c' , 'O' , 'én' , 'Ez' , ' \0 ' } ;

printf ( 'A kimenet: %s \n ' , teszt ) ;

Visszatérés 0 ;

}

A fenti program deklarál egy karaktertömb tesztet 8-as mérettel és inicializálja a karakterekkel 'Üdvözöljük' , és „\0” . Ezután a printf() funkciót a tesztben tárolt karakterlánc kinyomtatásához.

Kimenet

Vegye ki a karakterlánc bemenetét a felhasználótól a C programozásban

A beviteli karakterláncot a felhasználótól is átveheti a scanf() függvényt, és ehhez meg kell határoznia a karakterlánc tömb méretét. A következő példa kód a felhasználótól való bevitelhez:

#include

int fő- ( )

{

char név [ 10 ] ;

printf ( 'Írja be a nevet:' ) ;

scanf ( '%s' , név ) ;

printf ( 'A megadott név: %s.' , név ) ;

Visszatérés 0 ;

}

A fenti program felkéri a felhasználót, hogy írjon be egy nevet, a scanf() függvény segítségével kiolvassa a felhasználótól, és eltárolja a karaktertömb nevében. Ezután a printf() függvényt használja a beírt név kinyomtatására.

Kimenet

Olvasson el egy karakterláncot vagy egy sort a C programozásban

Használhatja a fgets() függvény a karakterláncok beolvasására, mivel a megadott bemeneti adatfolyamból egy szövegsor beolvasására és egy karaktertömbben való tárolására szolgál. Az alábbi kód egy példa egy ilyen esetre:

#include

int fő- ( ) {

char vonal [ ötven ] ;

printf ( 'Írjon be egy szövegsort:' ) ;

fgets ( vonal , mérete ( vonal ) , stdin ) ;

printf ( 'Beírtad: %s' , vonal ) ;

Visszatérés 0 ;

}

A fenti C program a fgets() funkcióval beolvassa a felhasználó által beírt szövegsort a szabványos bemenetről, és egy sor nevű karaktertömbben tárolja. Ezután a printf() függvény segítségével kiírja a beírt szövegsort.

Kimenet

Gyakran használt karakterlánc-függvények

A C programozás stringjei különféle funkciókat támogatnak, amelyek a programokban különböző műveletek végrehajtására használhatók. Az alábbiakban megemlítünk néhány olyan függvényt, amelyet egy karakterlánc támogat C-ben:

A funkció neve A funkció célja
strcat(a1,a2); Az a2 karakterlánc tartalmát hozzáfűzi az a1 karakterlánc végéhez. A művelet után a kapott karakterlánc a1-ben kerül tárolásra.
strcpy(a1,a2); Ez a függvény az a2 karakterlánc tartalmát az a1 karakterláncba másolja. A művelet után az a1 az a2 pontos másolatát fogja tartalmazni, beleértve a befejező null karaktert.
strlen(a1); Az a1 karakterlánc hosszát adja vissza, azaz a karakterláncban az utolsó befejező vagy null karakter előtt található karakterek teljes számát.
strchr(a1,ch1); Ez a függvény a ch1 karakter első előfordulására mozgatja a mutatót az a1 karakterláncban. Ez a függvény null mutatót ad vissza, ha a ch1 nem található az a1 karakterláncban.

Jegyzet: A C szabványos könyvtárat biztosít amely különféle funkciókat biztosít a karakterláncokkal való munkavégzéshez C-ben. Ezek a funkciók közé tartoznak például a karakterláncok másolása, a karakterláncok összefűzése stb.

Következtetés

A karakterlánc a C programok lineáris sorozatának gyűjteménye. Minden karakter egy bájtot tárol, és dupla idézőjelek jelzik. C biztosítja a szabványos könyvtárat és a karakterlánc-függvényeken keresztül egyszerűen végezhet bonyolult feladatokat. A fenti útmutatóban a karakterlánc deklarálásának és inicializálásának különböző módjait tárgyaltuk. Példakóddal is bemutattuk a karakterlánc függvénynek való átadását.