Primul program pe care îl vom analiza este Hello World, un program care afișează o linie de text "Bună ziua, lumea!" Și își încheie execuția.
Să o privim cu atenție. Prima linie este #include
Abrevierea stdio poate fi tradusă ca intrare / ieșire standard. Litera "h" după punct înseamnă antetul (antetul engleză). În anteturile (care sunt reprezentate de obicei prin fișiere antet separate), funcțiile, tipurile de date, constantele și definițiile de preprocesor furnizate de bibliotecile lor respective sunt de obicei declarate. [3]
ceea ce înseamnă: "funcția numită principală. care returnează un număr întreg (un număr de tip int din întregul cuvânt englez) și care nu are argumente (void) "
Alternativ, standardul permite definirea unei funcții ca funcție principală a două argumente (int argc și char * argv [] - nume, desigur, poate fi arbitrară), care este folosit pentru a avea acces la argumentele liniei de comandă din program. În acest caz, această caracteristică nu este necesară, deci funcția este definită ca o argumentație (care este permisă în mod explicit de standard). [4]
Cuvântul englez void poate fi tradus drept "goliciune". Apoi, parantezele curb deschise și corpul funcției vine, la sfârșitul coastelor curl sunt închise. Funcția principală este funcția principală a programului, începe executarea programului.
Corpul funcției, la rândul său, determină secvența acțiunilor efectuate de această funcție - logica funcției. Funcția noastră are o singură acțiune:
Această acțiune, la rândul său, este o chemare la funcția standard a bibliotecii. [5] Ca urmare a acestui apel, șirul Hello, lumea este imprimat pe ieșirea standard (care este cel mai probabil să fie un ecran sau o fereastră pe ecran).
Apoi se emite comanda return 0; care completează executarea funcției cu o valoare de returnare de 0, definită de standard (pentru funcția principală) ca fiind codul pentru finalizarea cu succes. [6] [7]
Această opțiune se distinge prin funcțiile printf (în loc de pune) și getchar.
Spre deosebire de funcțiile pe care le pune. ieșind șirul de caractere trecut ca argument, primul și obligatoriu argument pentru funcția printf determină formatul de ieșire. [8]
În general, formatul constă dintr-un text arbitrar (fără a include caracterul%) "amestecat" cu indicatori de conversie (precedat de caracterul%). În acest caz, însă, această caracteristică nu este utilizată și nu sunt efectuate conversii.
Rețineți că combinația \ n apare în constanta stringului, include codul de control (sau caracterul de control) al traducerii (de asemenea, pauza sau completarea) liniei din șirul de ieșire. Spre deosebire de funcțiile pe care le pune. adăugând întotdeauna acest cod la șirul de ieșire, printf necesită indicația sa explicită.
Ediția curentă a standardului definește șapte astfel de combinații, toate fiind scrise cu caracterul invers "\" (vedeți codurile de caractere ASCII). [9]
Să urmărim următoarele inovații:
Mediul în care este pornit programul poate fi de obicei configurat astfel încât ieșirea programului să rămână pe ecran după ce a fost executată pe o perioadă nedeterminată. Cel mai simplu mod de a face acest lucru este de a apela programul din shell (care, la rândul său, poate fi rulat în fereastra emulator terminal) sau (în funcție de sistem) fereastra Cmd.exe.
Cu toate acestea, atunci când porniți direct din mediul grafic, fereastra pe care programul o poate aloca se poate închide imediat după terminarea programului. Funcția getchar [10] așteaptă ca utilizatorul să intre, astfel "amânând" finalizarea programului (retur). Ce acțiuni pot întrerupe această așteptare - depinde de sistem, dar puteți spera că apăsarea tastei Enter va încheia această funcție în orice sistem.
În unele tutoriale, funcția getch este furnizată, de asemenea, în același scop. Cu toate acestea, această funcție (spre deosebire de getchar) nu este standard și, în plus, este dependentă de platformă. De exemplu, în unele sisteme, utilizarea getch necesită includerea fișierului curses.h și invocarea anterioară a funcției initscr. În alte sisteme, cu toate acestea, getch poate fi declarat în conio.h. și nu este necesară execuția initscr.
În cele din urmă, ia în considerare următoarele, depășind standardul. versiune a acestui program.
Utilizarea antetului windows.h poate părea acceptabilă a acestui cod într-un singur sistem. Cu toate acestea, pentru interfața utilizată aici, există și o implementare independentă independentă - Wine. - vă permite să compilați și să executați această opțiune pe sisteme cum ar fi, de exemplu, GNU / Linux. FreeBSD. Solaris și Mac OS X.