Pole je datová struktura používaná k ukládání sekvenčních položek stejného datového typu. Pozici prvku v sekvenci se říká index. Indexy začínají od 0 do (n-1).
V tomto článku se dozvíte, jak používat pole v C. Většina konceptů zde spadá do většiny ostatních programovacích jazyků, takže si je nezapomeňte vzít na vědomí.
Definování polí
Chcete -li definovat pole, napište jeho datový typ následovaný názvem pole a hranatými závorkami:
int věk [8];
Uvnitř hranatých závorek je očekávaný počet datových položek, které pole obdrží. Pokud potřebujete deklarovat dvě pole současně, můžete tak učinit níže. Stojí za zmínku, že preferovaným způsobem je deklarace samostatně.
int věk [8], výška [8];
Je také možné deklarovat pole následujícím způsobem:
int [8] věk;
Výše uvedená syntaxe by to znamenala stáří je ukazatel na pole typu int. Ačkoli můžete použít „syntaxi ukazatele“, upřednostňuje se první.
Příbuzný: Jak zobrazit multiplikační tabulku čísla pomocí Pythonu, C ++, JavaScriptu a C.
Někdy možná nevíte, kolik prvků od svého pole očekáváte. V takovém případě byste museli deklarovat pole bez počtu prvků. Viz příklad níže:
int věk [];
Operace na polích
Chcete -li odkazovat na prvek pole, napište název pole následovaný jeho indexem do hranatých závorek (např. věk [5]). Můžete také použít proměnné v hranatých závorkách:
věk [x+y]
Musíte zajistit, aby byl výpočet těchto proměnných v rozsahu 0 až (n-1). V opačném případě se zobrazí chyba kompilace.
Inicializace
Array elements can be given at declaration or later on in the program. Tato akce je známá jako inicializace, protože pole má původně nulové hodnoty.
Viz příklad níže. Vytiskne hodnotu prvku a jeho index v poli. Řádek 5 používá k inicializaci celočíselného pole seznam inicializátorů.
#zahrnout
int main (neplatné) {
printf ("%s%11 s
"," Prvek "," Hodnota ");
int n [4] = {1, 4, 9, 16};
// výstup prvků pole v tabulkovém formátu
pro (velikost_t i = 0; i <4; ++ i) {
printf ("%5u%10d
", i, n [i]);
}
}
Výstup:
Hodnota prvku
0 1
1 4
2 9
3 16
Použití polí k ukládání řetězců
Pole lze také použít k ukládání řetězců, nejen celých čísel. Při použití tímto způsobem nezapomeňte do seznamu inicializátorů zahrnout jednoduché uvozovky pro každý prvek.
char fruit [] = ['b', 'e', 'r', 'r', 'y', '\ 0'];
Všimněte si, že char používá se datový typ. Řetězcový literál se ve skutečnosti skládá z jednotlivých znaků, a proto vidíte char.
Příbuzný: Jak se naučit programovat v C ++: 6 webů, jak začít
Zobrazené pole končí únikovou sekvencí (\0). Toto je znak ukončení řetězce nazývaný znak null. Toto musíte vždy zahrnout při inicializaci seznamu polí.
Ve skutečnosti existuje jednodušší způsob inicializace pole znaků. Nejprve jsme ukázali předchozí přístup, abyste věděli, že pole znaků má vždy speciální koncový znak (\0). Je běžnou chybou, že začínající programátoři mají velikost pole menší o jeden a zapomínají na poslední prvek (\0).
char string1 [5] = "Kód";
Předpokládejme, že potřebujete získat vstup uživatele a uložit jej do pole. Můžete použít standardní funkci knihovny scanf pro tohle.
Musíte však určit počet znaků, které by funkce měla očekávat. To je proto, že scanf nekontroluje velikost pole a může zapisovat data na adresy mimo pole, což způsobí přetečení vyrovnávací paměti.
Použijte %s specifikátor převodu k definování maximálního očekávaného vstupu. The scanf funkce přečte všechny zadané znaky, dokud nenajdete mezeru, tabulátor, nový řádek nebo indikátor konce souboru.
Rozvoj vašeho programování v jazyce C.
Zdroje, které používáte k učení, jsou stejně důležité jako vaše nadšení se učit. Učení bez osvědčených postupů způsobí, že bude vaše cesta programováním náročná.
C je obzvláště náročný na učení, protože není objektově orientovaný. Naštěstí máme spoustu zdrojů, které vám pomohou zvládnout programování v jazyce C.
Přáli jste si někdy, abyste věděli, jak provádět základní programování v jazyce C? Nyní můžete díky tomuto balíčku školení.
Číst dále
- Programování
- C Programování
- Programování
- Programovací jazyky
Jerome je spisovatelem štábu v MakeUseOf. Zabývá se články o programování a Linuxu. Je také nadšencem kryptoměn a vždy má přehled o krypto průmyslu.
Přihlaste se k odběru našeho zpravodaje
Připojte se k našemu zpravodaji a získejte technické tipy, recenze, bezplatné elektronické knihy a exkluzivní nabídky!
Kliknutím sem se přihlásíte k odběru