This shows you the differences between two versions of the page.
uso:laboratoare:new:04-appdev:need-to-know [2019/10/19 11:18] lucian.teodorescu [Linkare cu o bibliotecă] |
uso:laboratoare:new:04-appdev:need-to-know [2019/10/24 11:23] (current) adrian.zatreanu [Automatizarea procesului de compilare - Makefile] |
||
---|---|---|---|
Line 96: | Line 96: | ||
- Rulați programul ''main'' și asigurați-vă că rularea lui se termină cu succes. | - Rulați programul ''main'' și asigurați-vă că rularea lui se termină cu succes. | ||
- Urmăriți pașii de mai jos: | - Urmăriți pașii de mai jos: | ||
- | - Declarați o funcție cu numele ''bad'' fără parametri care nu întoarce nimic în fișierul ''a.h'' (Atenție: doar declarația!). | + | - Declarați o funcție cu numele ''bad'' fără parametri care nu întoarce nimic, în fișierul ''a.h'' (Atenție: doar declarația!). |
- În fișierul ''main.c'', înainte de linia ''return 0'', apelați această funcție (''bad()''). | - În fișierul ''main.c'', înainte de linia ''return 0'', apelați această funcție (''bad()''). | ||
- Compilați din nou acest program (cu aceeași comandă pe care ați văzut-o mai sus). Ce s-a întâmplat? Care este motivul? Discutați cu asistentul. | - Compilați din nou acest program (cu aceeași comandă pe care ați văzut-o mai sus). Ce s-a întâmplat? Care este motivul? Discutați cu asistentul. | ||
Line 111: | Line 111: | ||
programelor C folosesc funcții din aceastea bibliotecă și s-a hotărât să fie linkată întotdeauna, însă aceasta nu este singura bibliotecă | programelor C folosesc funcții din aceastea bibliotecă și s-a hotărât să fie linkată întotdeauna, însă aceasta nu este singura bibliotecă | ||
externă pe care putem să o folosim. Putem să creăm noi o bibliotecă și să o linkăm programului nostru sau să folosim o bibliotecă deja | externă pe care putem să o folosim. Putem să creăm noi o bibliotecă și să o linkăm programului nostru sau să folosim o bibliotecă deja | ||
- | existentă cum ar fi biblioteca ce conține funcții matematice''math''. | + | existentă cum ar fi biblioteca ce conține funcții matematice ''math''. |
Pentru a folosi biblioteca ''math'' în programul nostru, trebuie să facem 2 lucruri. | Pentru a folosi biblioteca ''math'' în programul nostru, trebuie să facem 2 lucruri. | ||
Line 135: | Line 135: | ||
int main(void) { | int main(void) { | ||
- | int x; | + | float x; |
printf("Give me a number: "); | printf("Give me a number: "); | ||
scanf("%f", &x); | scanf("%f", &x); | ||
Line 144: | Line 144: | ||
<note> | <note> | ||
- | Observați faptul că am include biblioteca ''math.h'' pentru a putea folosi funcția ''sqrt'' pentru calcularea radicalului unui număr. | + | Observați faptul că am inclus biblioteca ''math.h'' pentru a putea folosi funcția ''sqrt'' pentru calcularea radicalului unui număr. |
</note> | </note> | ||
Line 169: | Line 169: | ||
student@uso:~/uso-lab/04-appdev/support/need-to-know/using-math$ ./main | student@uso:~/uso-lab/04-appdev/support/need-to-know/using-math$ ./main | ||
Give me a number: 1234 | Give me a number: 1234 | ||
- | The square root for it is: 33925.795731 | + | The square root for it is: 35.128336 |
</code> | </code> | ||
Line 217: | Line 217: | ||
Vedem acum că a fost creat executabilul ''main'' pe care putem să-l rulăm în continuare. | Vedem acum că a fost creat executabilul ''main'' pe care putem să-l rulăm în continuare. | ||
- | - Rulați exetuabilul ''main'' și asigurați-vă că funcționează. | + | - Rulați executabilul ''main'' și asigurați-vă că funcționează. |
- Adăugați o regulă numită ''run'' în Makefile care să aibă drept comandă asociată chiar comanda cu care rulăm programul ''main''. Nu treceți mai departe până când partea aceasta nu este clară. | - Adăugați o regulă numită ''run'' în Makefile care să aibă drept comandă asociată chiar comanda cu care rulăm programul ''main''. Nu treceți mai departe până când partea aceasta nu este clară. | ||
- Ștergeți executabilul ''main'' folosind una dintre regulile definite în Makefile. | - Ștergeți executabilul ''main'' folosind una dintre regulile definite în Makefile. | ||
Line 235: | Line 235: | ||
</code> | </code> | ||
- | - La calea ''~/uso-labs/04-appdev/support/basics/'' creați un Makefile care să conțină regulile ''main'', ''run'' și ''clean''. Nu treceți mai departe până când asistentul confirmă că este în regulă. | + | - La calea ''~/uso-lab/04-appdev/support/need-to-know/'' creați un Makefile care să conțină regulile ''main'', ''run'' și ''clean''. Nu treceți mai departe până când asistentul confirmă că este în regulă. |