Programozás C-készítő

Billentyűzet bemeneti vonal

Használhatja a cin nyilatkozatot. Input Operation írható:

Ha cin üzemeltető figyelembe kell venni a következőket:

- Input ér véget, amikor az Enter billentyű megnyomása;

- Ha van egy rés a vonal, a karakter a szóköz után nem lépett;

- Ha a karakterek száma kevesebb, mint a bejelentett húr hossza, a többi mezőt nem töltötte ki. Ezért szükséges, hogy a pre-visszaállító vonal

- Ha a karakterek száma több, mint a bejelentett string hossza, majd belépett az összes karakter Enter billentyű lenyomása előtt.

Mint egy operátor bemeneti amikor húrok helyett felvétel a patak üzemeltető CIN >> jobb felhasználása cin.getline () függvény, mint egy patak a bemeneti üzemeltető figyelmen kívül hagyja bemeneti terek, és emellett, lehet továbbra is írásban elemei a tömböt, amikor egy sorban adják kevesebb helyet a beírt karakterek. cin.getline () függvény elfogad két érv: az első érv jelzi a sort, amelyben a bemeneti végezzük, és a második - a karakterek számát be kell vinni.

cout <

cout <

Elején meghirdetett program sajatString sor kerülhet csak három fontos karakterek és fejeződik be null-terminált. Minden ezt követő karaktereket ebben stringtömb hogy ki kell dobni. Mint látható a például akkor, ha cin.getline () függvény a második paraméter jelzi a számok kisebb, vagy egyenlő, mint a méret a bemeneti karakterlánc.

Néha ez sokkal kényelmesebb bemenet lesz () függvényt.

Amikor kap () függvény, a következőket kell figyelembe venni:

- Ha a karakterek száma kevesebb, mint a bejelentett húr hossza, a többi mezőt nem töltötte ki. Ezért kívánatos, hogy a pre-reset sort;

- Karakterek száma nem lehet több, mint a közölt string hossza (a funkció kap nem ellenőrzi a karakterek száma, és ez ahhoz vezethet, hogy kiszámíthatatlan hibák);

- Input ér véget, ha az Enter billentyűt.

cout <

cout <

Hosszának meghatározása vonalak

Nagyon gyakran, amikor dolgozik húrok kell tudni, hogy hány karakter a szöveg tartalmaz. Annak tisztázása információkat a string hossza a header fájlban string.h leírt funkció strlen (). A szintaxisa Ez a funkció a következő:

size_t strlen (const char * string)

A funkció az egyedüli paraméter kap egy mutatót, hogy az elején húr vonalak, kiszámítja a beérkezett előjel nélküli egész, és visszaadja a karaktersorozatot (size_t). strlen () függvény értéke egy kisebb elkülönített tömb miatt a hely foglalás egy " # 92; 0”. A következő kódrészlet használatát mutatja strlen () függvényt:

char Str [] = "ABCDEFGHIJK";

int i = 0; // i - betűk számláló

RUS ( "backup-teszt"); // Szöveg beírása orosz bufRus

míg a (bufRus [i] = '# 92; 0'!) // Ellenőrizze a végén a másolt tömb

A string.h könyvtár másol számos standard funkciók.

strcpy () egy prototípus:

char * strcpy (char * STRL, const char * str2)

Például, a következő kód példányban értéke a húr Str „Másolás Test” sort:

strcpy (Str, RUS ( "Másolás Test"));

strcpy (Str, RUS ( "Másolás Test"));

// ptr most mutat

Másolás: A program szöveg jelenik meg.

strncpy () függvény eltér strcpy (), hogy a beállítás egy újabb érv meghatározza a karakterek száma, amelyek már nem kerülnek másolásra. A szintaxis a következő:

char * strncpy (char * STRL, const char * str2, size_t num)

Ha a hossza kisebb, mint a hossza STRL str2, karakterek vágás következik be:

char cLong [] = "012345678901234567890123456789";

strncpy (CShort, cLong, 4);

cout <

cout <

Az eredmény jelenik meg:

Azaz, a sorban cLong CShort első négy szimbólum string másolható, cseréje, így a kezdeti értéke a kezdete egy rövid karaktersorozat.

StrDup () függvény paraméterként kapja egy mutatót a sornak, elvégzi a memória kiosztás, másolás kijelölt területein egy húr, és visszaad egy pointert a sor elejére kapott példány. A szintaxis a következő:

char * StrDup (const char * forrás)

str1 = új char [21]; // memória dinamikus

strcpy (str1, RUS ( "Az eljárás nem található"));

Az összefűzés (kuplung) sorokban

Az összefűzés vagy a tengelykapcsoló vonalak valósítható egy hozzáadásával tömb másik:

char Str1 [10], Str2 [10], Str3 [20], Str4 [11] =”, és # 92; 0 „;

Kapcsolódó cikkek