Funkcia je skupina príkazov na vykonanie konkrétnej úlohy. Bez toho, aby boli napísané všetky príkazy v rovnakom programe, je možné ich rozdeliť do viacerých funkcií. Pri programovaní môže užívateľ definovať svoje vlastné funkcie. K dispozícii sú aj funkcie poskytované programovacími jazykmi. Jazyk C poskytuje množstvo funkcií, takže ich programátor môže používať priamo bez toho, aby ich implementoval od začiatku. Dve takéto funkcie poskytované jazykom C sú scanf a získajú. Tento článok popisuje rozdiel medzi týmito dvoma funkciami. kľúčový rozdiel medzi scanf a get je to scanf ukončí vstup po stretnutí s medzerou, newline alebo End Of File (EOF), zatiaľ čo dostane medzeru za časť vstupného reťazca a ukončí vstup po stretnutí s newline alebo EOF.
1. Prehľad a kľúčový rozdiel
2. Čo je to scanf
3. Čo sa dostane
4. Podobnosti medzi scanf a dostane
5. Porovnanie vedľa seba - scanf vs dostane tabuľkovú formu
6. Zhrnutie
Funkcia scanf môže čítať vstup z klávesnice a ukladať ich podľa daného formátu špecifikátora. Číta vstup, až kým nenarazí na medzeru, nový riadok alebo EOF. Syntax je nasledovná.
scanf („formátovací reťazec“, zoznam adries premenných);
Ak chcete porozumieť skenovaniu, pozrite si nasledujúci príklad.
Obrázok 01: scanf s jedným vstupom
Podľa vyššie uvedeného programu je vstup získaný z klávesnice celé číslo, takže špecifikátor formátu je% d. Ak získava znakovú hodnotu, špecifikátor formátu je% c. Ak získame hodnotu s pohyblivou rádovou čiarkou, špecifikátor formátu je% f. Prijatá vstupná hodnota by mala byť uložená v číselnej premennej. Preto je adresa premennej číslo odovzdaná do funkcie scanf. Premenná number teraz obsahuje hodnotu zadanú používateľom z klávesnice. Nakoniec môžeme vytlačiť číselnú premennú, aby sme skontrolovali hodnotu.
Je tiež možné súčasne získať viac ako jednu hodnotu.
Obrázok 02: scanf s viacerými vstupmi
Prijaté vstupy sú uložené v premenných číslo 1 a číslo 2. Hodnoty je možné skontrolovať pomocou printf.
Funkcia get sa používa na príjem vstupu z klávesnice, až kým nenarazíte na nový riadok alebo EOF. Prázdne miesto sa považuje za súčasť vstupu. Syntax funkcie get je nasledovná.
get („kam uložiť reťazec“);
Ak pri prijímaní reťazca dôjde k chybe, funkcia get vráti nulovú hodnotu.
Pozrite si nasledujúci príklad,
Obrázok 03: dostane
Vstup je prijatý funkciou get a uložený v premennom word1. Ak programátor namiesto príkazu getf použil scanf a vložil reťazec, napríklad „ahoj svet“, program scanf načíta reťazec ako dva reťazce kvôli medzeru. Ale dostane ho prečíta ako jeden reťazec „ahoj svet“.
scanf vs dostane | |
scanf je funkcia C na čítanie vstupu zo štandardného vstupu, kým nenarazíte na medzeru, nový riadok alebo EOF. | get je funkcia C na čítanie vstupu zo štandardného vstupu, až kým nenarazíte na nový riadok alebo EOF. Za súčasť vstupu považuje medzeru. |
syntax | |
Funkcia scanf vezme formátovací reťazec a zoznam adries premenných. napr. scanf („% d“, & číslo); | Funkcia get získa názov premennej na uloženie prijatej hodnoty. Napr. gets (meno); |
flexibilita | |
scanf vie čítať viac hodnôt rôznych typov údajov. | get () získa iba údaje o reťazcoch znakov. |
scanf a get sú funkcie poskytované programovacím jazykom C. Užívateľ nemusí tieto funkcie implementovať od začiatku. Môžu ich priamo použiť vo svojich programoch. Rozdiel medzi scanf a get je v tom, že scanf končí vstupom po stretnutí s medzerou, newline alebo End Of File (EOF) a za medzeru považuje vstup za medzeru a ukončí vstup po stretnutí s newline alebo EOF. Použitie funkcie scanf alebo get závisí od spôsobu prijímania vstupu používateľa od štandardného vstupu, ktorým je klávesnica väčšinu času. scanf je flexibilnejší ako dostane.
Môžete si stiahnuť verziu tohto článku vo formáte PDF a použiť ju na účely offline podľa citácie. Stiahnite si PDF verziu tu Rozdiel medzi scanf a get
1.LearningLad., Funkcia „Scanf () v programovacích jazykoch Video s programovacím jazykom“ YouTube, YouTube, 23. apríla 2013. K dispozícii tu
2.LearningLad, „get () String Input Function in C Programming Language Video Tutorial“, YouTube, YouTube, 6. mája 2013. K dispozícii tu