Több érték visszaadása C++ nyelven

Tobb Ertek Visszaadasa C Nyelven



A C++ nyelv számos funkciót biztosít számunkra, és nagyban megkönnyíti a programozást. De néha több értéket kell visszaadnunk, miközben C++ programozással dolgozunk. Sajnos a C++ nem segít nekünk ezzel a funkcióval. Ahhoz, hogy több értéket adjunk vissza C++ nyelven, különböző technikákat kell használnunk. Több értéket is visszaadhatunk C++-ban sorok/párok, mutatók és tömbök használatával. Ebben az útmutatóban alaposan tanulmányozzuk ezeket a technikákat a kódokkal és magyarázatokkal együtt.

1. példa: A sorok/párok használata

Végezzünk gyakorlati bemutatót több érték visszaadásához C++ nyelven. Itt a tuples/pairs technikákat használjuk, hogy segítsünk több értéket visszaadni a kódunkban. A C++ különféle fejlécfájlokat biztosít, amelyeket bele kell foglalnunk a kódunkba. Itt szerepel a „bits/stdc++.h”, mivel ez tartalmazza a C++ programozás összes könyvtárát. Ezután hozzáadjuk a névteret, amely „std”. Ezt követően a „tuple” kulcsszót használjuk, amelyben három adattípust, két float adattípust és a maradék egy „char” adattípust helyezünk el. Alatta a „return” kulcsszót használjuk az értékek becsomagolására, hogy visszaadhassanak egy sort.

Most a „pár” módszert használjuk több érték visszaadására. Ebben a „páros” metódusban két változó adattípusát adjuk meg, és mindkettő itt „lebegő”. A változók neve „float_1” és „float_2”. Ezután két értéket csomagolunk, hogy visszatérjünk a „párokhoz”. Ezek után itt meghívjuk a „main()”-t, majd deklarálunk két „float” változót „f_1, f_2” néven. A „char” változó itt is „myChar”-ként van deklarálva. Ezután kicsomagoljuk a „My_Tuple()” függvény által visszaadott értékeket.







Ez alatt páronként tároljuk a visszaadott értékeket. A „4.99, 8.98” értéket a „My_Tuple” függvényben, a „6.86, 3.22” értéket pedig a „My_Pair” függvényben tároljuk. Ezután a „cout”-ot használjuk, amely kiírja a benne lévő összes információt.



1. kód:



#include
segítségével névtér std ;
tuple < úszó , úszó , char > My_Tuple ( úszó f_1, úszó f_2 ) {
Visszatérés make_tuple ( f_2, f_1, '$' ) ;
}
pár < úszó , úszó > My_Pair ( úszó f_a, úszó f_b ) {
Visszatérés make_pair ( f_b, f_a ) ;
}
int fő- ( ) {
úszó f_1, f_2 ;
char myChar ;
nyakkendő ( f_1, f_2, myChar ) = My_Tuple ( 4.99 , 8.98 ) ;
pár új_p = My_Pair ( 6.86 , 3.22 ) ;
cout << 'Az értékek, amelyeket sorszámmal kapunk:' ;
cout << f_1 << ' ' << f_2 << ' ' << myChar << endl ;
cout << 'Párban kapott értékek:' ;
cout << új_p. első << ' ' << új_p. második ;
Visszatérés 0 ;
}

Kimenet :





A „tuples” és a „pair” metódus használatával itt kapott értékeket a következőkben mutatjuk be. Vegye figyelembe, hogy itt több értéket ad vissza.



2. példa: A mutatók használata

Itt adjuk át a paramétereket a címükkel együtt az „összehasonlítás” funkcióban. Hozzáadjuk az „int” típusú „érték_1” és „érték_2”, valamint az „int* g_Address, int* s_Address” értéket. Ezt követően használjuk az „if” feltételt, amelyben hozzáadunk egy feltételt, hogy az „érték_1” nagyobb, mint az „érték_2”. Ha ez teljesül, akkor a következő utasítás kerül végrehajtásra. Ha nem, akkor figyelmen kívül hagyja az alább hozzáadott állítást, és az „egyéb” rész felé halad. Most a „main()” meghívása után négy új változót deklarálunk „g_value”, „s_value”, „newValue1” és „newValue2” néven.

Ezt követően kinyomtatunk egy üzenetet a számok beírására, majd elhelyezzük a „cin”-t, amely két értéket kap a felhasználótól. A felhasználó által beírt értékek a „newValue1” és „newValue2” változókba kerülnek, rendre. Ezt követően meghívjuk a korábban létrehozott „compare()” függvényt, és négy paramétert adunk át neki. Ezután az „összehasonlítás” funkció végrehajtása után megjelenítjük az eredményt, és a felhasználó által beírt számok közül a nagyobb és a kisebb számot mutatja.

2. kód:

#include
segítségével névtér std ;
üres összehasonlítani ( int érték_1, int value_2, int * g_Address, int * s_Cím )
{
ha ( érték_1 > érték_2 ) {
* g_Cím = érték_1 ;
* s_Cím = érték_2 ;
}
más {
* g_Cím = érték_2 ;
* s_Cím = érték_1 ;
}
}
int fő- ( )
{
int g_érték, s_érték, újÉrték_1, újÉrték_2 ;
cout << 'Kérjük, írjon be két számot:' <> newValue_1 >> newValue_2 ;
összehasonlítani ( újÉrték_1, újÉrték_2, & g_value, & s_value ) ;
cout << ' \n A nagyobb szám a ' << g_value << 'és a kisebb szám a'
<< s_value ;
Visszatérés 0 ;
}

Kimenet :
A felhasználó ide írja be a „86” és a „23” számot. Az „Enter” megnyomása után megjelenik az eredmény. Ily módon többféle értéket kapunk.

3. példa: A tömb használata

Itt létrehozzuk a „ComputeComparison()” függvényt, amelybe beszúrunk két változót, a „num_1” és „num_2” „int” típusként, valamint egy „my_arr[]” nevű tömböt. Ezek után van az „if” feltétel, amely ellenőrzi, hogy a „num_1” nagyobb-e, mint a „num_2” vagy sem. Ha ez igaz, akkor a „szám_1” a „saját_számom[0]”-hoz, a „szám_2” pedig a „saját_számom[1]”-hez van hozzárendelve. De ha a feltétel nem igaz, akkor az „else” utáni utasítások végrehajtásra kerülnek, amelyekben „szám_2”-t rendelünk a „saját_elfogadó[0]”-hoz és „szám_1”-et a „saját_elfogadó[1]-hez”.

Ezek után itt meghívjuk a „main()”-t, majd deklarálunk még két int változót: „newNum_1” és „newNum_2”. Ezt követően egy „2” méretű tömb kerül deklarálásra. Ezek után a „cin” segítségével két számot kapunk a felhasználótól, majd meghívjuk a „ComputeComparison()” függvényt és megjelenítjük a következő eredményt. Tehát itt több értéket ad vissza.

3. kód:

#include
segítségével névtér std ;
üres ComputeComparison ( int szám_1, int szám_2, int my_arr [ ] )
{

ha ( szám_1 > szám_2 ) {
my_arr [ 0 ] = szám_1 ;
my_arr [ 1 ] = szám_2 ;
}
más {
my_arr [ 0 ] = szám_2 ;
my_arr [ 1 ] = szám_1 ;
}
}

int fő- ( )
{
int newNum_1, newNum_2 ;
int my_arr [ 2 ] ;

cout << 'Kérjük, adjon meg két számot az összehasonlításhoz' <> newNum_1 >> newNum_2 ;
ComputeComparison ( newNum_1, newNum_2, my_arr ) ;
cout << ' \n A nagyobb szám a ' << my_arr [ 0 ] << ' és a '
'kisebb szám' << my_arr [ 1 ] ;

Visszatérés 0 ;
}

Kimenet :
Ide írjuk az „54”-et és a „98”-at is, majd az „Enter”-t nyomjuk meg az eredmény megjelenítéséhez. A beírt számok közül a nagyobb és a kisebb számokat mutatja.

4. példa: A sorok használata

Két fejlécfájl található itt: „tuple” és „iostream”. Ezután az „std” névtér kerül ide. Ezután a „tuple” kulcsszót használjuk, és beillesztünk két adattípust, amelyek az „int”. Ezt követően létrehozunk egy függvényt „findingValues()” névvel, és paraméterként adjuk meg az „intÉrték_1” és „intÉrték2” ​​értéket.

Ezután az „if” kerül oda, ahol beírjuk az „intÉrték_1 < intÉrték_2” feltételt. Alatta használjuk a „return” kulcsszót, és elhelyezzük a „make_tuple()” függvényt, amelyben mindkét változó hozzáadódik „intValue_1, intValue2_” paraméterként. Ezután megvan az „else” rész, amelyben ismét a „return”-t helyezzük el a „make_tuple()” függvénnyel együtt. De itt először az „intValue_2”, majd az „intValue1” értéket helyezzük el. Most meghívjuk a „main()”-t, és inicializáljuk az „új_érték1”-et „5”-tel, az „új_érték2”-t pedig „28”-cal.

A következőkben további két „int” típusú változót deklarálunk „nagyobb” és „kisebb” néven. Ezután helyezzük el a „tie()” függvényt, és a „kisebb, nagyobb” változókat adjuk át paraméterként, és itt hívjuk meg a „findingValues()” függvényt is. Ezt követően mindkét értéket kiírjuk: a nagyobb és a kisebb számokat.

4. kód:

#include
#include
segítségével névtér std ;
tuple  findingValues ( int intValue_1, int intValue_2 )
{
ha ( intValue_1 < intValue_2 ) {
Visszatérés make_tuple ( intÉrték_1 , intÉrték_2 ) ;
}
más {
Visszatérés make_tuple ( intÉrték_2 , intÉrték_1 ) ;
}
}
int fő- ( )
{
int új_érték1 = 5 , új_érték2 = 28 ;
int nagyobb, kisebb ;
nyakkendő ( kisebb, nagyobb ) = Értékek keresése ( új_érték1, új_érték2 ) ;
printf ( 'A nagyobb szám %d és a '
'kisebb szám %d' ,
nagyobb, kisebb ) ;
Visszatérés 0 ;
}

Kimenet :

A kódunkhoz hozzáadott számok egyszerre jelenítik meg a nagyobb és a kisebb értékeket. Ily módon könnyen visszaadhatunk több értéket a kódunkban.

Következtetés

Ez az útmutató a „több érték visszaadásáról” szól a C++ kódokban. Ebben az útmutatóban alaposan megvizsgáltuk ezt a fogalmat, és három olyan technikát tárgyaltunk, amelyek segítenek több érték visszaadásában a C++ programozásban. Elmagyaráztuk, hogy több értéket ad vissza a sorok, párok, mutatók és tömb technikák felhasználásával. Mindezeket a technikákat részletesen ismertetjük itt.