Kuidas tuvastada, kas C++ string on tühi

Kuidas Tuvastada Kas C String On Tuhi



C++ programmeerimises on tekstiandmete haldamine ja manipuleerimine tarkvaraarenduse põhiaspekt. Stringid, mis toimivad tähemärkide jadadena, on tekstiandmete haldamisel keskse tähtsusega. Üks levinud stsenaarium, millega programmeerijad sageli kokku puutuvad, on vajadus kindlaks teha, kas C++ string on tühi. Stringi, milles pole märke, nimetatakse tühjaks stringiks. Õnneks pakub C++ oma standardteegi sees lihtsaid meetodeid stringi tühjuse kindlakstegemiseks. Selles artiklis uuritakse meetodeid ja tehnikaid, mida kasutatakse C++ stringi tühisuse tuvastamiseks, mis loob aluse teie programmides stringiandmete käsitlemiseks ja kinnitamiseks.

1. meetod: Liikmefunktsiooni Tühi() kasutamine

Üks lihtne ja sisseehitatud lähenemisviis C++-s stringi tühisuse kindlakstegemiseks hõlmab liikmefunktsiooni 'empty()' kasutamist. Funktsioon 'empty()' on osa standardsest C++ stringiklassist ja pakub mugavat võimalust kontrollida, kas stringis pole märke.

Siin on lihtne näide, mis illustreerib tühja () funktsiooni kasutamist:







#include
#include
kasutades nimeruum std ;

int peamine ( ) {

string tühiStr ;

kui ( tühiStr. tühi ( ) ) {
cout << 'Nöör on tühi.' << endl ;
} muidu {
cout << 'Nöör ei ole tühi.' << endl ;
}

tagasi 0 ;
}

Sellesse C++ koodilõiku alustame vajalike päisefailide lisamisega, nagu ja , et hõlbustada vastavalt sisend- ja väljundtoiminguid ning stringidega töötamist. Funktsiooni 'main()' sees deklareerime stringi muutuja nimega 'emptyStr'. See string on algselt tühi, ilma ühegi märgita. Seejärel kasutame C++ klassi 'string' pakutavat liigefunktsiooni 'tühi()'. Nagu nimigi viitab, kontrollib funktsioon 'empty()', kas string, millele see välja kutsutakse, on tühi või mitte.



Meie puhul kutsume selle funktsiooni esile stringis 'emptyStr'. Pärast seda kasutame tingimuslauset, et hinnata Boole'i ​​tulemust, mille funktsioon 'empty()' tagastab. Kui string on tõesti tühi, väljastab meie programm sõnumi, mis näitab, et string on tühi. Teisest küljest, kui string sisaldab märke, väljastab programm sõnumi, mis ütleb, et string ei ole tühi.



Pakutud C++ koodi väljund on järgmine:





2. meetod: Liikmefunktsiooni Size() kasutamine

Teine võimalus tuvastada, kas C++ string on tühi, hõlmab 'string' klassi pakutava liikmefunktsiooni 'size()' kasutamist. Erinevalt funktsioonist 'empty()', mis tagastab otse tühjust näitava Boole'i ​​väärtuse, tagastab 'size()' stringis olevate märkide arvu. Tühjuse kontrollimiseks võrdleme 'size()' tulemust nulliga, kuna tühja stringi suurus on null.



Siin on näide:

#include
#include
kasutades nimeruum std ;

int peamine ( ) {

string myEmptyString ;

kui ( myEmptyString. suurus ( ) == 0 ) {
cout << 'Antud string on tühi.' << endl ;
} muidu {
cout << 'Antud string ei ole tühi.' << endl ;
}

tagasi 0 ;
}

Selles näites alustame stringi muutuja nimega 'myEmptyString' deklareerimisest ilma seda initsialiseerimata, jättes selle vaikimisi tühjaks. Edasi liikudes kutsume esile funktsiooni 'size()', et määrata stringi 'myEmptyString' suurus või märkide arv. Lause 'if' hindab, kas suurus võrdub nulliga, mis näitab, et string on tühi. Kui see tingimus on täidetud, väljastame konsooli teate, mis teatab, et antud string on tühi. Ja vastupidi, kui suurus ei ole null, nihkub juhtvoog plokki „muu” ja kuvatakse teistsugune teade, mis kinnitab, et antud string pole tühi.

3. meetod: võrdluse kasutamine tühja stringliteraaliga

Täiendav meetod C++ stringi tühisuse kindlakstegemiseks hõlmab otsest võrdlust tühja stringiliteraaliga. Tühja stringiliteraali tähistab paar jutumärkidest, mille vahel pole märke, näiteks ''. Saame kindlaks teha, kas string sisaldab märki, võrreldes antud stringi selle tühja stringi literaaliga.

Siin on näide, mis illustreerib seda lähenemisviisi:

#include
#include
kasutades nimeruum std ;

int peamine ( )
{
stringi kasutajanimi ;

cout <> kasutajanimi ;

kui ( kasutajanimi == '' )
{
cout << 'Viga: kasutajanimi ei saa olla tühi.' << endl ;
}
muidu
{
cout << 'Tere, ' << kasutajanimi << '! Tere tulemast meie platvormile.' << endl ;
}

tagasi 0 ;
}

Sel juhul käivitame rakenduse, mis palub kasutajal sisestada oma kasutajanimi. Programm alustab kasutaja sisendi salvestamiseks stringi muutuja 'username' deklareerimisega. Seejärel kuvatakse kasutajale teade 'Sisestage oma kasutajanimi:' ja tema sisend jäädvustatakse vooga 'cin'. Seejärel kasutab programm tingimuslauset, et kontrollida, kas sisestatud kasutajanimi on tühi, mis saavutatakse selle otsese võrdlemisega tühja stringliteraaliga, kasutades võrdusoperaatorit (==). Kui leitakse, et kasutajanimi on tühi, väljastab programm veateate, mis ütleb: 'Viga: kasutajanimi ei saa olla tühi'. Kui kasutajanimi pole aga tühi, kuvab programm isikupärastatud tervitussõnumi, mis sisaldab sisestatud kasutajanime ja tervitust 'Tere, [kasutajanimi]! Tere tulemast meie platvormile'.

Siin on väljund, kus me kasutajanime ei andnud:

Väljund kasutajanime sisestamisel on järgmine:

4. meetod: kolmekomponendilise operaatori kasutamine

Kolmekomponentne operaator väljendab lühidalt tingimuslauset ühel real, mis muudab koodi kompaktsemaks. Kolmekomponentne operaator tagastab ühe kahest väärtusest pärast tingimuse hindamist, et näha, kas string on tühi. Sel juhul saame tühjuse kontrollimiseks kasutada liigefunktsiooni 'empty()' ja kasutada vastava sõnumi määramiseks kolmepoolset operaatorit.

Siin on illustreeriv näide:

#include
#include
kasutades nimeruum std ;

int peamine ( ) {
string sampleString = 'Tere, Maailm!' ;

cout << 'Nöör on' << ( sampleString. tühi ( ) ? 'tühi.' : 'mitte tühi.' ) << endl ;

tagasi 0 ;
}

Seejärel deklareerime stringi muutuja nimega 'sampleString' ja lähtestame selle 'Tere, maailm!' sisu. Kasutame lauses 'cout' kolmekomponentset operaatorit, et teha kindlaks, kas string on tühi. Kolmekomponentne operaator hindab tingimust 'sampleString.empty()', kontrollides, kas string on tühi, ja prindib vastava teate 'String on tühi', kui tingimus on tõene, ja 'string ei ole tühi', kui tingimus on vale. Programm lõpeb 0 tagastamisega, mis tähistab edukat käitamist. Selle programmi täitmine genereerib järgmise väljundi:

Järeldus

Stringi manipuleerimise ja töötlemise jaoks on oluline tuvastada, kas C++ string on tühi. Selles artiklis uurisime mitmeid meetodeid, millest igaühel on oma eelised. Liikmefunktsioon 'tühi() on kõige otsesem ja sagedamini kasutatav funktsioon, mis näitab selgelt stringi tühjust. 'Size()' kasutamine pakub alternatiivset lähenemisviisi, kontrollides stringi pikkust. Tühja stringliteraaliga võrdlemine on lihtne ja intuitiivne, samas kui kolmeosalised operaatorid pakuvad tšeki integreerimisel keerukamasse loogikasse paindlikkust. Õige lähenemisviisi valimisel tuleb arvesse võtta programmi erivajadusi.