Põhierinevus – getc vs getchar
Funktsioon on lausete kogum konkreetse ülesande täitmiseks. Programmeerimisel saab kasutaja defineerida oma funktsioone või kasutada programmeerimiskeele poolt pakutavaid funktsioone. C-keelel on mitmeid funktsioone, nii et programmeerija saab neid kasutada otse kodeerimisel ilma neid algusest peale rakendamata. On vähe funktsioone, mis on seotud märkide lugemisega. Kaks neist on getc ja getchar. Peamine erinevus getc ja getchar vahel on see, et getc-i kasutatakse märgi lugemiseks sisendvoost, näiteks failist või standardsisendist, samas kui getchar on tähe lugemiseks standardsisendist. Selles artiklis käsitletakse nende kahe funktsiooni erinevust.
Mis on getc?
See on funktsioon, mida kasutatakse märgi lugemiseks sisendvoost, näiteks failist või klaviatuurilt. See tagastab edu korral vastava täisarvu väärtuse. Getc süntaks on int getc (Fail voog). Vaadake allolevat näidet. Oletame, et test.txt on lihttekstifail projekti kataloogis. Sellel failil on kaks märki, mis on "a" ja "b".
Joonis 01: faili märkide lugemine, kasutades getc
Vastav alt ül altoodud programmile avatakse testfail lugemisrežiimis. Seejärel loetakse esimene märk funktsiooni getc abil ja salvestatakse muutujasse c1. Printf-lause väljund c1. Seejärel loetakse teine märk ja salvestatakse muutujasse c2. Printf-lause väljund c2. Seetõttu kasutatakse voost, näiteks failist, märgi lugemiseks funktsiooni getc.
Joonis 02: Tähemärkide lugemine failis kasutades getc ja loop.
Seda saab kasutada tsükliga, et lugeda kõiki tähemärke ükshaaval, kuni see jõuab faili lõppu (EOF), nagu eespool kirjeldatud. Faili test.txt kaks märki kuvatakse ekraanil.
Mis on getchar()?
getchar() kasutatakse märgi lugemiseks ainult standardsisendist. See ootab, kuni vajutatakse sisestusklahvi ja näit on ekraanil näha. Selle süntaks on sarnane int getchar(void);
Funktsioon getchar ei vaja argumenti nagu getc. Vaikimisi töötab getchar standardsisendi jaoks. Seetõttu pole funktsiooni getchar jaoks vaja ühtegi argumenti edastada. Vaadake allolevat näidet.
Joonis 03: getchar
Kui kasutaja sisestab sisestusmärgi, kuvatakse see ekraanil ja oodatakse, kuni vajutatakse sisestusklahvi. Pärast sisestusklahvi prinditakse väljund funktsiooni printf tõttu ekraanile.
Sama getchari funktsiooni saab saavutada funktsiooni getc abil järgmiselt.
Joonis 04: getchari funktsionaalsus kasutades getc
Vastav alt ül altoodud programmile kasutatakse märgi lugemiseks funktsiooni getc. See salvestatakse muutujasse "ch". Funktsioon getc väidab, et stdin näitab, et sisend on võetud standardsisendist, milleks on klaviatuur. Kasutaja saab sisestada märgi ja vajutada sisestusklahvi. Seejärel prinditakse see märk ekraanile, kasutades funktsiooni printf.
Millised on getc ja getchari sarnasused?
- Mõlemad on C-programmeerimiskeele pakutavad funktsioonid.
- Mõlemad funktsioonid tagastavad voo lõppedes faili lõpu (EOF).
Mis vahe on getc ja getchar vahel?
getc vs getchar |
|
getc on C-funktsioon märgi lugemiseks sisendvoost, näiteks failivoost või standardsisendist. | getchar on C-funktsioon, et lugeda tähemärki ainult standardsest sisendvoost (stdin), mis on klaviatuur. |
Süntaks | |
getc süntaks on sarnane int getc-ga (fail voog). | getchar süntaks on sarnane int getchar(void); |
Kokkuvõte – getc vs getchar
C programmeerimiskeel pakub palju funktsioone. Programmeerijad saavad neid funktsioone kasutada ilma neid algusest peale rakendamata. Kaks sellist funktsiooni on getc ja getchar. Getc ja getchari erinevus seisneb selles, et getc-i kasutatakse märgi lugemiseks sisendvoost, näiteks failist või standardsisendist, ja getchari kasutatakse märgi lugemiseks standardsisendist. Mõlemad kasutavad tähemärgi lugemiseks, kuid nende funktsioonid on erinevad.
Laadige alla getc vs getchar PDF-versioon
Saate alla laadida selle artikli PDF-versiooni ja kasutada seda võrguühenduseta kasutamiseks vastav alt tsitaadi märkusele. Laadige PDF-versioon alla siit. Getc ja getchari erinevus