Alone Bine ați venit înapoi și această prelegere îmi place să vorbesc despre ce se întâmplă în crearea unui program C.
Există, așadar, patru sarcini fundamentale în crearea oricărui program C și ce sunt aceste sarcini
includ editarea compilării executând legarea.
Bine ați vorbit despre diferitele etape pe care le veți angaja când scrieți un program C în
ceea ce privește că veți înțelege cerințele pe care le veți proiecta codul pe care veți scrie codul
pe care îl veți testați, depanați și așa mai departe și apoi mențineți-o.
Acesta este ceea ce vorbesc aici, este ceea ce trebuie să faceți de fapt când, atunci când când
începeți să scrieți un program pe care l-am vorbit despre editarea compilației, dar legarea întreabă tragere este de asemenea importantă.
Și despre ce vreau să vorbesc aici sunt detalii despre asta.
Deci, aceste sarcini vor deveni a doua natura pentru voi, deoarece o sa o faceti de
fiecare data cand scrieti un program C pe care il veti edita codul
sursa pe care il faceti si compilati ca veti fi conectat și atunci veți fi difuzat poate face acest lucru foarte des foarte des.
Deci, procesele de adăugare a compilării de executare a conexiunilor sunt aceleași pentru dezvoltarea de programe în orice mediu cu
orice limbaj compilat.
Acest lucru nu este unic pentru a vedea dacă scrieți un program Java Java pe care îl veți scrie codul sursă.
Veți compila codul sursă care vă va lega de faptul că este posibil să nu fiți la fel de conștienți de Java, dar
va face un fel de legare și vom vorbi despre legătura.
Și apoi vei executa programul pe care îl vei face toate astea.
Ceea ce descriu aici este din nou cum se face în C ..
Deci, editarea este exact ceea ce credeți că este.
Este procesul de creare și modificare a codului real.
Codul sursă C, codul sursă C, se va afla în interiorul unui fișier și va conține
toate instrucțiunile și toate instrucțiunile pe care le scrieți toate fișierele cu cod sursă C.
Și cu aceasta este extensia și astfel puteți identifica faptul că este un fișier cu cod sursă.
Înainte ca extensia Dotsie să fie numită denumirea de bază.
Doriți ca numele fișierelor dvs. să aibă importanță dacă scrieți căutați programul Poopsie care adaugă două numere.
Este posibil să aveți un fișier numit adăugați Ducey care conține codul sursă.
Și rețineți că un program C mult în majoritatea programelor C va avea multe fișiere diferite, astfel încât fișierele dvs. ar trebui
să aibă nume bune.
Dar modul în care puteți identifica codul sursă C este extensia Dotsie pe
care toate conțin extensia Dossey acum când am adăugat codul nostru pentru această clasă, vom folosi un mediu de dezvoltare integrat.
Nu vom folosi doar un editor simplu.
Este un exemplu al unui simplu editor care ar fi ceva de genul cuvântului că vom folosi ceva
care are un editor, dar are și multe alte lucruri care vă ajută să vă scrieți codul în mod mai eficient.
Ideea și aceasta se numește I. T. mediu integrat pentru dezvoltatori.
Cel pe care o vom folosi pentru această clasă este blocurile de coduri.
Mă voi ocupa în detaliu, dar vom folosi blocuri de cod pentru sarcină.
Dar poți să folosești orice vrei tu dacă vrei să folosești notepad-ul dacă
vrei să folosești ceva chiar mai minuscul pe care îl poți adăuga în ID-urile studioului vizual.
Cel pe care o vom acoperi aici este cum să vă editați codurile și blocurile de coduri.
Și aceasta este o idee frumoasă și motivul pentru care l-am ales.
Vom vorbi despre mai multe detalii, dar este cross-platform și ușor de utilizat.
Deci, editare este un proces de bază care scrie compilarea codului.
Știm ce înseamnă un compilator doar că acea mașină că codul lingvistic de nivel
înalt și apoi convertește la limbajul mașinii, precum și atacurile și găsește erori în codul tău.
După ce editați codul, veți rula compilatorul.
Deci, intrarea în compilator va fi tot codul sursă, toate fișierele dvs. Dotsie tot ceea
ce editați.
Și din nou, un program C poate avea multe fișiere sursă, dar intrarea în compilator sau compilarea acestor
fișiere de forțe.
Convertirea acestui cod este un proces în două etape.
Prima etapă se numește faza de preprocesare în care codul dvs. poate fi modificat sau adăugat.
Și a doua etapă este compilația reală pe care o generează.
Acesta generează codul limbajului de asamblare și vom vorbi despre acest detaliu mai detaliat în această fază de
preprocesare, dar trebuie doar să știți acum că există două etape când compilați.
Cel pe care ne vom concentra pe cel ușor de înțeles este generarea
codului obiect.
Deci, compilatorul se va uita la fiecare afirmație și se va
asigura că sintaxa este corectă și că semantica limbii este sintaxa este să vă asigurați că structura codului este
corectă pe care aveți semi-colonii la sfârșitul instrucțiunii că utilizați tipuri de date pe care sunteți
în conformitate cu regulile din semantica limbajului este sensul cuvintelor.
Deci, dacă utilizați un cuvânt cheie care este o condiție semantică se întâmplă în faza de compilare, prin crearea unui tabel de simboluri
așa mai departe.
Dar compilatorul este important.
Va genera acest cod obiect.
Va va spune daca aveti vreo eroare in sintaxa ta.
De asemenea, poate recunoaște uneori dacă aveți sau nu acest cod, în principiu, codul nu a fost utilizat.
Nu găsește erori logice.
Găsește numai erori de sintaxă împotriva sintaxei, deoarece regulile și erorile logice de limbă sunt semnificația.
Ca și cum ați face o greșeală în logică, puteți face o greșeală în funcționalitate.
Deci, codul dvs. poate rula.
Se poate compila, dar nu poate funcționa conform destinației.
Și aceasta este menționată ca o eroare logică.
Compilatorul nu vă va spune dacă aveți foarte multă grijă.
Dacă intenționați să întrebați utilizatorul pentru un număr în loc de un șir de caractere în locul unui șir de caractere sau îl întrebați pe utilizator cu privire
la numele înainte de numele lor.
Aceasta este o logică, compilatorul dvs. nu vă va spune aceste erori de tip.
Erorile tipice afișate de compilator vor fi lucruri ca variabilele nedeclarate într-o expresie care nu este
conformă cu sintaxa.
Nu aveți parantezele potrivite.
Nu ai blocuri care nu au blocuri.
Veți deveni foarte familiarizați cu compilatorii și ce înseamnă ei.
Din fericire, după ce ați învățat limba C și executați compilatorul, veți
vedea o eroare și veți putea să o remediați imediat pentru că a uitat o sintaxă sau ce a uitat la semi-colon.
Oh, am uitat să furnizez un consola dreaptă pentru a termina acel bloc de cod.
Va deveni a doua natură.
Deci, după ce ați rezolvat toate erorile și ați compilat este de succes, se va traduce în limba
de asamblare și va genera acest cod obiect.
Deci, codul obiect real este un fișier.
Este codul real al limbajului Simon care rulează că are o extensie.
Sau Datto că LBJ de obicei pe Windows va fi extensia pe un sistem Linux sau Macintosh va fi extensia
pe care o veți vedea acel fișier generat după ce vă compilați codul.
Și aceasta este doar faza finală a compilației care este asamblarea reală care va fi binară.
Nu arata ca dracu ', nu vei putea sa te uiti la ea.
Pur și simplu va avea o extensie Datto și asta generează compilatorul.
Modul în care rulați compilatorul și vedeți că utilizați de fapt o comandă.
Probabil că nu va trebui să faceți asta, deoarece ID-ul, fie editorul din Divell Burmah integrat, o va face pentru
dvs. doar făcând clic pe o opțiune de meniu, dar este important să știți ce se întâmplă.
Deci atunci când când emiteți comanda compilatorului se utilizează în mod obișnuit un compilator nou, care este o comandă GCC, dar la
nivelul de bază trebuie doar să rulați un program de compilatoare.
Fie CC, fie CCG executați acel program și apoi specificați intrarea.
Amintiți-vă că compilatorul ia ca intrare fișierele sursă pe care le specificați intrarea utilizând un semnalizator Dessie
și apoi specificând fișierele sursă unul după altul.
Astfel, exemplele sunt CC.
Programul meu văd.
Sau dacă utilizați compilatorul Ganu care este un popular GCC Dessie și dacă omiteți steagul C, programul
dvs. nu va fi legat, de asemenea, care este următorul pas.
Dar, într-adevăr, este ușor să rulați acest compilator dacă sunteți la interfața liniei de comandă.
Este chiar mai ușor dacă folosiți doar o opțiune de meniu care va fi probabil făcută în această clasă,
dar din nou este nevoie de introducerea fișierelor sursă C în blocuri reci așa cum am menționat că veți fi doar făcând clic pe o opțiune de meniu
și va compila automat linkul și apoi puteți să faceți clic pe altă opțiune de meniu pentru a
rula automat.
Dar din nou, ce se întâmplă sub capotă, de fapt, emiteți comanda compilatorului cu
steagul Dashti și fișierele sursă de intrare după ce vă compilați linkul.
Asa cum am spus ca fiecare limbaj de programare are o conexiune dar de multe ori este transparent nu
vei sti nici macar ce se intampla in C procesul de conectare este important pentru ca nu este intotdeauna transparent.
Dar cu cele mai moderne I. T. Estul astăzi este.
Dar trebuie să subliniez că este puțin important este faptul că este important să vedem că după ce programul a
fost tradus în cod, codul obiect este apoi gata să fie legat la rădăcină.
Motivul pentru care facem legătura este că pentru utilizarea bibliotecilor externe trebuie să luăm toate celelalte biblioteci și să
le punem într-un singur program.
Deci, legarea este doar obtinerea tuturor dependențelor în loc și construirea unui fișier executabil real.
Deci vechiul fișier este obiectul.
Atunci legați toți Dago-urile într-un executabil.
Și din nou, acest lucru este, de obicei, transparent, de obicei se întâmplă automat atunci când compilați.
Dar, din nou, nu s-ar putea să fie și ar trebui să faceți o comandă separată ca o coajă dash sau ceva asemănător.
Dar este nevoie de toate acele fișiere obiect și construiește un executabil și executabile ce executați.
Deci, o să combine toate acestea și apoi se va întâmpla în același timp și puteți avea umbre
care sunt biblioteci suplimentare pe care alte programe pe care ați dori să le utilizați pe care cineva le-a scris altcuiva sau
alte biblioteci care vin cu limba C.
Veți lua toate aceste lucruri și le veți pune împreună, iar faza de legare va detecta și va
raporta și Eros.
Există două faze separate care se leagă din nou și vor fi de obicei ca erori de redefinire sau încercați
să apelați o funcție care nu există.
Deci, dacă nu aveți acel fișier pentru a alcătui întregul program, veți avea o eroare de legătură și va trebui să aveți toate datele
afișate și, din nou, datele pot întotdeauna să nu fie chiar ale dvs.
Poate că ele pot veni cu limbajul C.
Ele pot fi parte din biblioteca standard sau pot veni cu un alt program dacă altcineva a scris.
Dar aveți nevoie de toate acele Ottos pentru a forma un executabil astfel încât suportul de bibliotecă de programe să
extindă limbajul C oferind rutine pentru a efectua operațiuni care nu fac parte din limbajul de
intrare a limbii și bibliotecile de ieșire sunt exemple de biblioteci de manipulare a șirului bibliotecii matematice.
Acesta este același lucru dacă sunteți familiarizat cu programul de lucru.
Este același lucru cu API-ul Java.
Este același lucru ca pachetele.
Este acest concept de a vrea să scriu date într-un fișier.
Nu vreau să o pun în aplicare singur.
Voi folosi o bibliotecă existentă care vine cu limba.
Este diferit în C, dar nu este o parte.
Doar cineva C vine cu asta.
Deci, există tot felul de biblioteci diferite pe care le vom învăța despre utilizarea.
Aceasta se petrece în faza de legătură.
Deci, dacă nu vă place în faza înseamnă că din nou trebuie să vă întoarceți și să editați codul
sursă pentru a vă asigura că puteți găsi acel fișier obiect.
Deci, o mulțime de eșecuri înseamnă de obicei că trebuie doar să includeți un fișier sau ceva de genul asta.
Aceasta va deveni și a doua natură.
Succesul dacă ați terminat compilarea cu succes ați terminat conectarea cu succes, care
va produce un fișier executabil într-un mediu Windows.
Fișierul executabil va avea o extensie SC dot în Linux și Windows va avea doar implicit 8.
out.
Puteți schimba numele de Ada la ceva mai semnificativ prin emiterea unui element împreună
cu comanda compilatorului.
Dar cele mai multe ID-uri din blocurile de coduri, de asemenea, vom avea un program de compilare și o singură operație în el
va produce executabilul.
Și apoi puteți dublu clic pe executabil sau puteți rula executabilul dintr-o comandă sau
din opțiunea de meniu, dar nu la nivel scăzut.
Pe Linux, veți vedea un număr de 8 în mod prestabilit ca executabil.
Pe Windows, veți vedea un program X-C, acesta fiind formatat din mai multe fișiere de
cod sursă menționate anterior, fiecare fișier cod sursă are nevoie de compilator pentru a genera fișierul obiect care trebuie legat.
Programul este mult mai ușor de gestionat prin ruperea acestuia într-un număr de fișiere sursă mai mici.
Veți dori să utilizați multe fișiere sursă și nu doriți ca un fișier sursă care conține 5000 de linii
de cod care nu este coerent.
Nu este ușor de gestionat.
Deci, veți crea fișiere care conțin cod sursă, iar codul sursă va fi specific
că va avea o funcționalitate specifică.
Este mult mai ușor de dezvoltat și mult mai ușor de depanat și este mult mai coerent.
Deci, veți avea multe fișiere sursă mai mici, pe care nu doriți fișiere mari de sursă cu mii de linii
de cod.
Și toate fișierele sursă vor alcătui întregul program.
Toți vor avea propriul lor Darroze și toate vor fi de intrare în compilator.
Toate acestea.
Aceste concepte care alcătuiesc programul sunt în esență, de asemenea, considerate un proiect.
Mă pot gândi la asta la un nivel mai înalt.
Este proiectul tău de a programa după ce ai terminat toate aceste lucruri și l-ai conectat în cazul în care
ai fișierul executabil și apoi poți rula programul.
Cele mai multe idei vor fi un click pe meniu.
Sau puteți dublu clic în Windows puteți dublu clic pe X-C Și dacă sunteți pe Linux,
tastați doar un punct.
Acum, când 8 trebuie să aveți anumite permisiuni, este posibil să emiteți o comandă de mod de schimbare,
dar pentru al rula, puteți spune că se află Doc Fort și voi rula programul din linia de comandă Linux.
Dar din nou, de obicei, nu trebuie să vă faceți griji în legătură cu acest lucru.
Deci, etapa de execuție este locul în care executați programul.
Fiecare dintre instrucțiunile pe care programul le execută secvențial, la rândul lor, cere ca programul să solicite orice
date de la utilizator.
Programul va întrerupe și va primi acea intrare.
Puteți obține intrarea prin intermediul tastaturii sau puteți obține versurile de intrare printr-o interfață grafică de utilizator.
Dacă aveți biblioteci pentru asta și veți vedea rezultate bune care sunt afișate de program apar
într-o fereastră numită con ..
Și vă vom arăta exemple de acest lucru când vorbim despre blocuri de coduri.
Dar când rulați programul dvs. de obicei, veți vedea ieșirea.
Nu intotdeauna.
Uneori, programele vor face lucruri care nu produc output, dar de obicei produc output
și vedeți ieșirea direct pe terminal sau
consola, etapa de execuție generează de asemenea o mare varietate de condiții.
Deci, puteți produce o ieșire greșită a aplicației, care este doar o logică și trebuie să vă întoarceți și
să modificați codul sursă.
Poate să stea acolo și să nu facă nimic pentru că aveți probleme logice.
Și, în cele din urmă, s-ar putea să vă prăbușească computerul, ceea ce reprezintă cel mai rău scenariu, ceea ce înseamnă
că ați făcut ceva foarte rău în programul dvs. și a fost atât de rău încât programul a murit.
Sau doar știți sau a cauzat de fapt altor programe din sistemul dvs. de
operare să vă prăbușească întregul computer.
Chiar dacă rulați actuala aplicație C poate cauza probleme dacă programul nu execută funcția dorită, atunci trebuie să vă
întoarceți și să editați codul sursă.
Este posibil să trebuiască să reorganizați o reproiectare și acest lucru este tot ce am vorbit despre pașii diferiți.
Aceasta este cunoscută sub denumirea de fază de depanare pentru a găsi și corecta erorile dvs. Vom avea o întreagă secțiune
despre depanare deoarece este atât de importantă.
Am menționat mai devreme că una dintre cele mai bune modalități de a învăța este să înveți prin
erorile tale că te duci în mod constant înapoi și să editezi codul sursă și să depanezi întregul proces de compilare a legării.
Programul se repetă până când ați terminat până când veți obține toate rezultatele de care aveți
nevoie pentru funcționalitatea codului respectiv.
Deci, iată din nou o altă ilustrare frumoasă pe care îmi place să o prezint că este luată
dintr-o carte numită Început vezi Piver sau.
Dar acesta este procesul pe care îl veți avea.
Veți edita codul sursă.
Veți crea un fișier cu extensia Dotsie și un nume semnificativ.
Veți folosi un editor pentru a face asta sau o idee.
Dezvoltarea integrată sau ceva asemănător cu blocurile reci pe care o vei compila.
Compilatorul va genera un ABI RBJ urmând un fișier vechi dacă nu generează acel fișier, ceea ce înseamnă că
aveți erori.
Trebuie să te întorci și să le rezolvi.
După ce creați, vor fi fișierele Jey fișierele de obiecte.
Apoi, trebuie să le conectați împreună pentru a crea un fișier executabil și puteți avea și erori în acea fază
în care nu sunt conectate corect.
Trebuie să vă întoarceți și să vă modificați codul sursă imediat ce nu aveți erori și aveți un fișier
executabil.
Apoi, puteți rula programul și, din nou, după ce executați programul, puteți să aveți erori, deoarece ar
putea exista erori logice.
Deci, atunci vă veți întoarce și editați codul sursă.
Deci, acest lucru va deveni un proces repetitiv pe care veți fi foarte
familiarizat cu compilarea link-ului xcuse.
Și asta este, de obicei, ceea ce faci pe Alling, care o să faci asta mereu și
iar și până când programul îți va îndeplini toate cerințele.