Caracteristici ale C. Textbook
Cele mai frecvente structuri variabile sunt declarate după cum urmează:
Există trei declară structură de tip cerc și structura de un singur tip de carte. Este posibil să se declare tipurile de structuri și variabile într-un mod diferit, dar pentru a evita confuzia considerăm alte metode nu.
Fiecare tip de cerc variabil cuprinde patru elemente (sau câmpuri) - x, y, dia, culoare. Putem spune că acestea sunt variabile imbricate. Mai mult decât atât, aceste variabile sunt de diferite tipuri. Astfel, variabilă structură reunește sub un singur nume un număr de date eterogene. De obicei, este necesar pentru procesarea comoditate. În cazul în care ar fi imposibil de a construi structuri care ar trebui să creeze un set de variabile independente sau numărul de seturi, o relație clară între ele nu ar fi. Structura, de asemenea, vă permite să combinați datele aferente. Acest curs nu a fost încă de programare orientat-obiect, dar privirea în direcția lui.
Declararea variabilă de tip structurat, putem avea acces la fiecare element pentru a atribui, modifica, sau pentru a obține valoarea:
Valoarea structurii variabile poate fi setat la o variabilă de același tip:
Cea de a patra linie de date cod alocate la nou vechi variabilă. Ca urmare, a doua structură conține o copie a primei date. Faptul că puteți efectua alocarea câmpurilor individuale ar trebui să fie clar.
Structura și funcția
Variabilele de structură pot fi transmise la funcții ca parametri și să le întoarcă acolo. Structurile sunt transmise prin valoare, ca variabile normale, mai degrabă decât prin referință ca matrice.
Luați în considerare un program în care o funcție returnează o structură, iar celălalt - este nevoie ca parametru:
Notă. Când compilarea de programe la comanda GNU / Linux arata ca acest lucru: program de GCC. c - lm. Acest lucru se datorează utilizării bibliotecii cu funcții matematice.
- Cercul este declarat ca un tip de structură de date la nivel mondial. Astfel, orice, nu doar main (). Funcția poate crea variabile de acest tip.
- new_circle () returnează o structură a unei funcții transversale () acceptă o structură semnificativ. Trebuie remarcat faptul că este posibil să se creeze funcții care se ia ca (eventual, mai multe structuri) și structura de retur.
- In new_circle () funcția creează o nouă variabilă de cerc tip struct. care sunt completate de către utilizator a câmpului. Funcția returnează valoarea variabilei în noua funcție principală (). în cazul în care este valoarea atribuită variabilei a. care face parte, de asemenea, de tip cerc sctruct.
- Funcția cruce () determină dacă cercul intersectează originea. În corpul ei calculează distanța de la centrul cercului la origine. Această distanță este ipotenuza unui triunghi dreptunghic, lungimea picioarelor este egală cu valorile lui x și y. Mai mult, în cazul în care ipotenuza mai mică decât raza, atunci cercul intersectează originea, adică, punctul (0, 0).
- În principal funcția () apelați la transversală de date (), conținute în variabila a. copiat și atribuit unui c variabilă.
Pointeri și structura
În C, tipul de software de înregistrare (* pnew). titlu de multe ori înlocui astfel: pnew -> titlu. permițând sintaxa. Când programul pe care îl vedeți săgeata (cratimele și parantezele) amintiți-vă întotdeauna că este scris cu săgeata - un pointer la o structură, nu o structură variabilă.
Exemplu de cod folosind indicii:
structura matrice
În mod normal, crearea programului într-un tip de structură variabilă nu are prea mult sens. Cele mai frecvente structuri utilizate atunci când aveți nevoie pentru a descrie setul de obiecte similare care au diferite valori caracteristice. Valorile fiecărui obiect trebuie să fie combinate împreună (în structura), și prin aceasta separat de celelalte valori obiect. De exemplu, descrierea unui număr de cărți și o mulțime de oameni. Astfel, putem organiza o matrice în care fiecare element este o structură separată, iar toate elementele aparțin aceluiași tip structural.
Programul va oferi posibilitatea de a primi informații cu privire la toate modelele, și să schimbe numărul de calculatoare specificate de modelul de utilizator. Programul are două funcții (în plus față de principal ()) vor fi identificate: pentru a afișa toate informațiile și pentru a modifica numărul de calculatoare.
Un exemplu de rezultat al programului de lucru: