Home » Articole » Articole » Calculatoare » Programare » C » Elemente de bază în programarea C

Elemente de bază în programarea C

postat în: C 0

Structura blocului, instrucțiunile, spațiul alb și domeniul de aplicare

Propozițiile delimitate cu „/*” și „*/” sunt comentarii, iar compilatorul le ignoră.

În continuare vom discuta structura de bază a unui program C. Dacă sunteți familiarizat cu PASCAL, este posibil să fi auzit referindu-se la el ca un limbaj structurat în bloc. C nu are o structură completă a blocurilor (și veți afla de ce când treceți peste funcții în detaliu), dar este totuși foarte important să înțelegeți ce sunt blocurile și cum să le folosiți.

Deci, ce este într-un bloc? În general, un bloc constă din instrucțiuni executabile.

Dar înainte de a pătrunde în blocuri, să examinăm instrucțiunile. O modalitate de a descrie instrucțiunile este că acestea sunt textul (și spațiul alb din jur) pe care compilatorul va încerca să le transforme în instrucțiuni executabile. O definiție mai simplă este că instrucțiunile sunt bucăți de cod care fac lucruri. De exemplu:

int i = 6;

Aceasta declară o variabilă întreagă, care poate fi accesată cu identificatorul „i”, și o inițializează la valoarea 6. Diferitele tipuri de date sunt introduse în capitolul Variabile.

S-ar putea să fi observat punctul și virgulă de la sfârșitul instrucțiunii. Instrucțiunile din C se termină întotdeauna cu punct și virgulă (;). Renunțarea la punct și virgulă este o greșeală comună pe care o fac mulți oameni, atât începători cât și experți! Așadar, până când devine a doua natură, asigurați-vă că vă verificați instrucțiunile!

Deoarece C este un limbaj în „format liber”, mai multe instrucțiuni pot partaja o singură linie în fișierul sursă, astfel:

/* aceasta declară variabilele 'i', 'test', 'foo', și 'bar'
    rețineți că NUMAI variabila numită „bar” este setată la șase! */
int i, test, foo, bar = 6;

Există mai multe feluri de instrucțiuni. Le-ați văzut deja pe unele dintre ele, cum ar fi desemnarea (i = 6;). O parte substanțială a acestui ghid se ocupă de construcția instrucțiunilor.

Înapoi la discuția noastră despre blocuri. În C, blocurile încep cu o acoladă de deschidere „{” și se termină cu o acoladă de închidere „}”. Blocurile pot conține alte blocuri care pot conține propriile blocuri și așa mai departe.

Să ne uităm la un exemplu de bloc.

int main(void)
{
    /* acesta este un 'bloc' */
    int i = 5;

    {
        /* acesta este, de asemenea, un „bloc”, imbricat în interiorul blocului exterior */
        int i = 6;
    }

    return 0;
}

Puteți folosi blocuri cu instrucțiunile precedente, cum ar fi declarația funcției principale (și alte instrucțiuni pe care nu le-am acoperit încă), dar puteți folosi și blocurile prin ele însele.

Spațiul alb se referă la caracterele de tabulație, spațiu și linie nouă care separă caracterele text care alcătuiesc codul sursă.

Ca multe lucruri în viață, este greu să apreciezi spațiul alb până nu dispare. Pentru un compilator C, codul sursă

    printf("Hello world"); return 0;

este același cu

    printf("Hello world");
    return 0;

care este de asemenea același cu

    printf (
    "Hello world") ;



    return 0;

Compilatorul pur și simplu ignoră majoritatea spațiilor albe (cu excepția, de exemplu, când separă return de 0). Cu toate acestea, este o practică obișnuită să folosiți spații (sau file) pentru a organiza codul sursă pentru a fi ușor de citit.

De cele mai multe ori nu dorim ca alte funcții sau rutine ale altor programatori să acceseze datele pe care le manipulăm în prezent, motiv pentru care este important să înțelegem conceptul de domeniu.

Domeniul de aplicare descrie nivelul la care o parte de date sau o funcție este vizibilă. Există două tipuri de domeniul de aplicare în C, local și global. Când vorbim de domeniu global, ne referim la ceva care poate fi văzut sau manipulat de oriunde în program. Domeniul local se aplică unui element de program care poate fi văzut sau manipulat numai în blocul în care a fost declarat.

Să ne uităm la câteva exemple pentru a ne face o idee mai bună despre domeniul de aplicare.

int i = 5; /* aceasta este o variabilă „globală”, poate fi accesată de oriunde în program */

/* aceasta este o funcție, toate variabilele din interiorul acesteia
	sunt „locale” funcției. */
int main(void)
{
    int i = 6; /* 'i' now equals 6 */
    printf("%d\n", i); /* afișează un „6” pe ecran, în loc de variabila globală „i”, care este 5 */

    return 0;
}

Asta arată un exemplu de local și global. Dar cum rămâne cu diferite domenii din interiorul funcțiilor? (veți afla mai multe despre funcții mai târziu, deocamdată, concentrați-vă doar pe partea „principală”.)

/* funcția principală */
int main(void)
{
    /* acesta este începutul unui „bloc”, ai citit despre el mai sus */

    int i = 6; /* aceasta este prima variabilă a acestui „bloc”, 'i' */

    {
        /* acesta este un nou „bloc” și, deoarece este un bloc diferit, are propriul său domeniu de aplicare */

        /* aceasta este, de asemenea, o variabilă numită „i”, dar într-un „bloc” diferit,
            deoarece se află într-un „bloc” diferit de prima variabilă numită „i”, nu o afectează pe prima! */
        int i = 5;
        printf("%d\n", i); /* afișează un „5” pe ecran */
    }
    /* acum am revenit la primul bloc */

    printf("%d\n", i); /* afișează un „6” pe ecran */

    return 0;
}

Bazele utilizării funcțiilor

Funcțiile sunt o parte importantă a programării. O funcție este un tip special de bloc care îndeplinește o sarcină bine definită. Dacă o funcție este bine proiectată, aceasta poate permite unui programator să efectueze o sarcină fără să știe nimic despre modul în care funcționează funcția. Acțiunea de a solicita unei funcții să își îndeplinească sarcina se numește apel de funcție. Multe funcții necesită un apel de funcție pentru a-i da anumite date necesare pentru a-și îndeplini sarcina; acestea se numesc argumente. Multe funcții returnează, de asemenea, o valoare apelului de funcție când sunt terminate; aceasta se numește valoare returnată (valoarea returnată în programul de mai sus este 0).

Lucrurile pe care trebuie să le știți înainte de a apela o funcție sunt:

  • Ce face funcția
  • Tipul de date (discutat mai târziu) al argumentelor și ce înseamnă acestea
  • Tipul de date al valorii returnate și ce înseamnă aceasta

Multe funcții folosesc valoarea returnată pentru rezultatul unui calcul. Unele funcții folosesc valoarea returnată pentru a indica dacă și-au încheiat cu succes munca. După cum ați văzut în exercițiul introductiv, funcția principală folosește valoarea de returnare pentru a furniza o stare de ieșire sistemului de operare.

Toate codurile, altele decât instrucțiunile și definițiile de date globale, trebuie să facă parte dintr-o funcție.

De obicei, sunteți liber să apelați o funcție oricând doriți. Singura restricție este că fiecare program executabil trebuie să aibă una și o singură funcție principală, care este locul în care programul începe să se execute.

Vom discuta despre funcții mai detaliat într-un capitol ulterior, Proceduri și funcții.

Biblioteca standard

În 1983, când C era în curs de a deveni standardizat, Institutul Național American de Standarde (ANSI) a format un comitet pentru a stabili o specificație standard pentru C cunoscută sub numele de „ANSI C”. Acea specificație standard a creat un set de bază de funcții comune pentru fiecare implementare a lui C, care este denumit Bibliotecă standard. Biblioteca standard oferă funcții pentru sarcini precum intrare/ieșire, manipulare șiruri, matematică, fișiere și alocarea memoriei. Biblioteca standard nu oferă funcții care depind de hardware sau sisteme de operare specifice, cum ar fi grafică, sunet sau rețea. În programul „Hello, World”, este utilizată o funcție Bibliotecă standard (printf) care trimite linii de text în fluxul de ieșire standard.

(Traducere și adaptare din Wikibooks de Nicolae Sfetcu)

Inteligența artificială în serviciile de informații, apărare și securitatea națională
Inteligența artificială în serviciile de informații, apărare și securitatea națională

Sfetcu, Nicolae (2023) Inteligența artificială în serviciile de informații, apărare și securitatea națională, Editura MultiMedia Publishing, ISBN 978-606-033-817-8, DOI: 10.58679/MM53113, https://www.telework.ro/ro/e-books/inteligenta-artificiala-in-serviciile-de-informatii-aparare-si-securitatea-nationala/   Abstract This essay explores the use of artificial intelligence by intelligence services around the world and its critical … Citeşte mai mult

Nu a fost votat $1.99$3.71 Selectează opțiunile
Ghid WordPress pentru dezvoltatori
Ghid WordPress pentru dezvoltatori

WordPress este o platformă pentru site-uri web rapidă, fiabilă, cu facilități multiple pentru dezvoltatori și ușor de utilizat. Totusi, dezvoltatorii și beneficiarii au de multe ori nevoie să adauge funcționalități suplimentare pentru a răspunde nevoilor lor. Acest ghid oferă unele … Citeşte mai mult

Nu a fost votat $3.99 Selectează opțiunile
Business intelligence și analitica în afaceri
Business intelligence și analitica în afaceri

Datele sunt fapte și cifre brute, iar informațiile sunt date semnificative care ar fi utile pentru o persoană sau companie. Business intelligence extrage informații din datele brute prin instrumente precum mineritul datelor, analiza perspectivală, procesarea analitică online etc. Cartea va oferi … Citeşte mai mult

Nu a fost votat $4.99$10.99 Selectează opțiunile

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *