Mitä merkkijonot ovat C-ohjelmointissa?

Mita Merkkijonot Ovat C Ohjelmointissa



C-ohjelmointikielellä jouset ovat tapa edustaa hahmoryhmää. Ne ovat välttämättömiä, koska ne antavat ohjelmoijille mahdollisuuden työskennellä tekstitietojen kanssa ohjelmissaan. Toisin kuin joissakin muissa ohjelmointikielissä, C:ssä ei ole sisäänrakennettua merkkijonotietotyyppiä. Sen sijaan merkkijonot luodaan merkkitaulukoilla.

Tässä artikkelissa selitämme, mitkä merkkijonot ovat C:ssä, miten ne ilmoitetaan ja kuinka ne toteutetaan C-ohjelmoinnissa.

Mitä merkkijonot ovat C-ohjelmointissa?

Merkkijonot ovat yksiulotteisia taulukoita, jotka päättyvät tyhjä \0 merkki. Niitä käytetään merkkien ja tekstien tallentamiseen, ja jokainen merkkijonon merkki vie yhden tavun muistista. Toisin kuin muissa ohjelmointikielissä, C:llä ei ole tietotyypin nimeä merkkijonona, sen sijaan tallennat tiedot char tyyppi.







Kuinka ilmoittaa merkkijonot C-ohjelmoinnissa?

C-ohjelmoinnissa voit ilmoittaa merkkijonon seuraavilla tavoilla:



Voit määrittää merkkijonon ennalta määritetyn koon kanssa. Esimerkiksi merkkijono, jonka enimmäiskoko on 8 merkkiä, tulee ilmoittaa seuraavasti:



hiiltyä testata [ 8 ] = 'Tervetuloa' ;

Toinen tapa määrittää merkkijono C:ssä on määrittää taulukon kokoa:





hiiltyä testata [ ] = 'Tervetuloa' ;

Voit myös määrittää merkkijonon käyttämällä määritellyn kokoista merkkijonoa:

hiiltyä testata [ 8 ] = { 'SISÄÄN' , 'Se on' , 'min' , 'c' , 'o' , 'min' , 'Se on' , ' \0 ' } ;

Tai voit määrittää merkkijonon merkkijonoon alustamalla sen merkki kerrallaan ilman määritettyä kokoa:



hiiltyä testata [ ] = { 'SISÄÄN' , 'Se on' , 'min' , 'c' , 'o' , 'min' , 'Se on' , ' \0 ' } ;

The tyhjä merkki '\0' edustaa merkkijonon loppua. Merkkijonon lopun määrittämiseksi on tärkeää lisätä tyhjä merkki jokaisen merkin loppuun.

Yllä olevan merkkijonon muistiesitys on seuraava:

Indeksi 0 1 2 3 4 5 6 7
Muuttuva SISÄÄN se on l c O m se on \0

C:ssä nolla-merkkiä käytetään määrittämään, mihin merkkijono päättyy. Jos nolla-merkkiä ei ole, nämä toiminnot jatkavat muistin käsittelyä merkkijonon lopun jälkeen, mikä saattaa johtaa koodin odottamattomaan toimintaan.

Seuraavassa on täydellinen C-ohjelmointikoodi merkkijonon tulostamiseen.

#include

int pää ( ) {

hiiltyä testata [ 8 ] = { 'SISÄÄN' , 'Se on' , 'min' , 'c' , 'o' , 'min' , 'Se on' , ' \0 ' } ;

printf ( 'Tuloste on: %s \n ' , testata ) ;

palata 0 ;

}

Yllä oleva ohjelma ilmoittaa merkkijonotestin, jonka koko on 8, ja alustaa sen merkeillä 'Tervetuloa' , ja '\0' . Sitten se käyttää printf() toiminto tulostaa testiin tallennetun merkkijonon.

Lähtö

Ota merkkijonon syöttö käyttäjältä C-ohjelmoinnissa

Voit myös ottaa syötemerkkijonon käyttäjältä käyttämällä scanf() funktio ja sitä varten sinun on määritettävä merkkijonotaulukon koko. Seuraavassa on esimerkkikoodi syötteen vastaanottamiseksi käyttäjältä:

#include

int pää ( )

{

hiiltyä nimi [ 10 ] ;

printf ( 'Anna nimi:' ) ;

scanf ( '%s' , nimi ) ;

printf ( 'Syötetty nimi on: %s.' , nimi ) ;

palata 0 ;

}

Yllä oleva ohjelma kehottaa käyttäjää antamaan nimen, lukee sen käyttäjältä scanf()-funktiolla ja tallentaa sen merkkijonon nimeen. Sen jälkeen se tulostaa syötetyn nimen printf()-funktiolla.

Lähtö

Lue merkkijono tai tekstirivi C-ohjelmoinnissa

Voit käyttää fgets() funktio lukemaan merkkijonoja, koska sitä käytetään tekstirivin lukemiseen määritetystä syöttövirrasta ja tallentamisesta merkkijonoon. Alla oleva koodi on esimerkki tällaisesta tapauksesta:

#include

int pää ( ) {

hiiltyä linja [ viisikymmentä ] ;

printf ( 'Anna tekstirivi:' ) ;

fgets ( linja , koko ( linja ) , stdin ) ;

printf ( 'Kirjoitit: %s' , linja ) ;

palata 0 ;

}

Yllä oleva C-ohjelma käyttää fgets() toiminto, joka lukee käyttäjän syöttämän tekstirivin vakiosyötteestä ja tallentaa sen merkkijonoon, jonka nimi on rivi. Sitten se tulostaa syötetyn tekstirivin printf()-funktiolla.

Lähtö

Yleisesti käytetyt merkkijonofunktiot

C-ohjelmoinnin merkkijonot tukevat erilaisia ​​toimintoja, joita voidaan käyttää ohjelmissa eri toimien suorittamiseen. Jotkut C:n merkkijonon tukemista toiminnoista on mainittu alla:

Toiminnon nimi Toiminnan tarkoitus
strcat(a1,a2); Lisää merkkijonon a2 sisällön merkkijonon a1 loppuun. Toimenpiteen jälkeen tuloksena oleva merkkijono tallennetaan a1:een.
strcpy(a1,a2); Tämä toiminto kopioi merkkijonon a2 sisällön merkkijonoon a1. Toiminnon jälkeen a1 sisältää tarkan kopion a2:sta, mukaan lukien päättävän nollamerkin.
strlen(a1); Palauttaa merkkijonon a1 pituuden eli merkkijonon merkkien kokonaismäärän ennen viimeistä lopetusmerkkiä tai tyhjää merkkiä.
strchr(a1,ch1); Tämä toiminto siirtää osoittimen merkin ch1 ensimmäiseen esiintymiseen merkkijonossa a1. Tämä funktio palauttaa nollaosoittimen, jos ch1 ei löydy merkkijonosta a1.

Huomautus: C tarjoaa vakiokirjaston nimeltä joka tarjoaa erilaisia ​​toimintoja merkkijonojen käsittelyyn C:ssä. Näitä toimintoja ovat esimerkiksi merkkijonojen kopiointi, merkkijonojen ketjuttaminen ja paljon muuta.

Johtopäätös

Merkkijono on C-ohjelmien lineaarisen sekvenssin kokoelma. Jokainen merkki tallentaa yhden tavun ja on esitetty lainausmerkeillä. C tarjoaa vakiokirjaston ja voit suorittaa monimutkaisia ​​tehtäviä helposti merkkijonofunktioiden avulla. Yllä olevassa oppaassa olemme keskustelleet eri tavoista merkkijonon ilmoittamiseen ja alustukseen. Olemme myös osoittaneet merkkijonon välityksen funktiolle esimerkkikoodilla.