Împrumut bun venit și asta e Luxor Vreau să vorbesc despre argumente și parametri.
Acești termeni tind să fie utilizați interschimbabil.
Ceea ce trebuie să se ocupe de ele este în esență date pe care le transmiteți unei funcții care este parametrul care este
o variabilă într-o declarație a funcției și o implementare a definiției funcției.
Rețineți această diferență între prototipul funcției de declarație a funcției în declarația funcției de definiție
a funcției.
Este doar semnătura metodei este definirea funcției antetului funcției este implementarea
funcției.
Codul real în ambele definiții ale declarației termenilor respectivi.
Înțelegeți aceste diferențe, dar parametrul este ceea ce se află în declarația funcției
și definiția acesteia în antet deoarece atât antetul este inclus în definiție, cât și în declarație.
Dreapta.
Când se numește o funcție, argumentele sunt datele pe care le transmiteți parametrilor funcției.
Acestea sunt valoarea reală a unei variabile care devine transmisă funcției.
Deci, parametrii funcției care se găsesc în antetul funcției și există locașuri pentru argumentele care trebuie
specificate atunci când funcția este invocată.
Așa că înțeleg diferența aici între argumente și parametri.
Parametrii au de a face cu definiția funcției și cu argumentele de declarație pe care le numim
funcția când invocăm funcția.
Datele pe care le transmiteți.
Deci, argumentele sunt folosite atunci când invocați veți spune că acestea sunt argumentele
care merg la funcția mea și atunci când funcția primește acele date despre care sunt denumite ca parametri parametrii funcției sunt o
listă de nume de parametri cu tipuri de date.
Fiecare parametru este separat de virgulă.
Întreaga listă de parametri este inclusă în paranteze, urmând numele funcției, o funcție nu poate
avea parametri, ceea ce înseamnă că nu există date transmise acesteia.
Și în acest caz, aveți doar parantezele stânga și dreapta cu un gol între ele sau goale.
Încă puteți să nu fie nimic gol între ele.
Dar este o bună practică de a pune un gol între gol este un cuvânt cheie special, care spune nimic înseamnă
nimic nu înseamnă nici un parametru sau nici un fel de date de retur.
Parametrii furnizează mijloacele de transmitere a datelor către o funcție.
Datele au trecut de la funcția de apelare la funcția numită tasta de invocare către capătul de
primire, capătul de apel și capătul de primire.
Numele parametrilor sunt locali pentru funcția respectivă.
Vom vorbi despre asta când vorbim despre date locale, dar acele nume de parametri există doar
în interiorul corpului funcției.
Ei își vor asuma valorile argumentelor care i-au fost transmise.
Deci, dacă aveți un apel pentru funcții și treceți o variabilă ca
argument, treceți în valoarea 5 și aveți o funcție cu un parametru x x va fi egală cu 5 oriunde în corpul funcției.
Organismul funcției ar trebui să utilizeze acești parametri în implementarea sa.
Dacă nu, atunci nu ar fi trebuit să fie trecute.
Dacă aveți o variabilă de parametru definită în definiția declarației de funcții și niciodată
nu folosiți acea variabilă în interiorul funcției care este risipă, nu o includeți pentru că asta spuneți că nu aveți
nevoie de ea nu trimite date către o funcție care o utilizează un corp de funcții poate avea variabile suplimentare definite local care
sunt necesare pentru implementarea funcției.
Este posibil să aveți în interiorul corpului funcției.
Alte variabile declarate pentru că sunt necesare pentru orice sarcină pe care o finalizați.
Nu operați doar doar pe datele care au fost transmise, puteți opera date locale în interiorul funcției când
treceți o matrice ca argument pentru o funcție.
De asemenea, trebuie să treci un argument suplimentar având alt parametru definit specificând
dimensiunea matricei.
Motivul pentru aceasta este că funcția nu are cum să știe câte elemente sunt în matrice.
Deci, dacă declarați o matrice de dimensiune 50, puteți să stocați numai 30 de elemente.
Și dacă intenționați să utilizați acea matrice în interiorul corpului funcției, probabil că veți avea nevoie să știți cât
de mare este pentru că veți avea nevoie fie să o iterați folosind o buclă,
fie veți accesa elemente.
Dacă sunteți elemente axente sau iterați prin ea.
Trebuie să știți dacă sunteți sau nu.
Unde și când ești în afara limitelor.
Și am vorbit despre eroarea de limite și de ce este important.
Ei bine, iată un exemplu.
Când se cheamă funcția de tipărire, furnizați întotdeauna una sau mai multe valori ca argumente.
Primele valori care coincid în interiorul citatelor duble cu valorile rămase sunt orice variabile care trebuie afișate.
Aceasta este de fapt o funcție care ia un număr variabil de argumente despre care probabil că nu vom vorbi,
deoarece aceasta este o clasă începător care este mai mult un concept avansat.
Dar funcția printf este un bun exemplu în ceea ce privește transmiterea datelor către el,
deoarece treceți mai multe seturi de date fie către șirul din interiorul cotelor sau variabilelor pe care doriți să le afișați.
Acesta este motivul pentru care este atât de important să puteți transmite date unei funcții.
Aceasta îmbunătățește foarte mult utilitatea și flexibilitatea unei funcții dacă funcțiile nu au capacitatea de a
accesa datele.
Ei doresc să fie la fel de folositori în exemplul pe care l-am oferit în ultima lectură în care am avut
o funcție care a afișat rezultatele.
Nu prea făcea mult.
A fost foarte static.
A făcut același lucru de fiecare dată când ai invocat-o.
Dar dacă ați avea o funcție care a luat date, atunci puteți controla ce este afișat.
Deci, la fel ca și funcția de imprimare, dacă funcția de imprimare nu avea parametri, nu ați
putea să-i spuneți ce să afișeze.
Dacă nu acceptați datele pe care doriți să le puteți spune hei afișați această variabilă sau afișați șirul.
Ar fi fost foarte util.
Corect, astfel încât doriți să puteți transmite date unei funcții.
Ea este mult mai utilă și
mai flexibilă și veți vedea că vreau să spun dacă vom face funcția de multiplicare nu veți dori să înmulțiți aceleași
două cifre de fiecare dată când veți lua parametri și datele vor fi transmise la ea pentru două numere.
Deci, ai putea face calcule diferite pe baza datelor care i-au fost transmise.
Foarte foarte important să înțelegeți trecerea datelor și de ce este util.
Este de asemenea o idee bună să adăugați comentarii înaintea fiecărei definiții de funcții proprii.
Ajută la explicarea a ceea ce va face funcția și a modului în care vor fi folosite argumentele.
Veți vedea că veți vedea acest lucru în exemplele mele.
Aveți declarația funcției în partea de sus a unui fișier pe care aveți definiția
funcției definiția funcției include antetul funcției chiar deasupra antetului funcției.
Aveți comentarii, de obicei, comentarii pe mai multe linii.
Deci, aveți asteriscul cu slash și acolo spuneți numele funcției.
Scopul funcției.
Și apoi descrieți și orice date care sunt transmise funcției.
Acest lucru este din nou pentru întreținere și să fie capabil să găsească și să remedieze erorile mult mai rapid.
De obicei, doriți să aveți un nume bun pentru funcția care
vă va spune ceva, dar cu comentarii suplimentare vă va spune chiar mai mult.
Iată un exemplu care este o funcție care înmulțește două numere.
Asta ia dat datele.
Avem numerele noastre multiple de două ori.
Știm că este o funcție deoarece are parametrii care au în esență paranteze.
Acesta este un mod în care puteți identifica funcțiile atunci când vedeți paranteze.
Adică, putem identifica și pentru că are un tip de returnare.
Există mai multe lucruri care ne spun că este o funcție.
Dar lucrul principal este parantezele.
Și apoi, de asemenea, vedeți parantezele parantezele curbate care semnifică începutul și sfârșitul
blocului.
Acest lucru se multiplica cu doua numere functioneaza totusi.
Amintiți-vă că parametrii funcției sunt definiți între paranteze.
Deci, aici și apoi sunt separate de virgule.
Aici avem doi parametri.
Avem un parametru numit X într-o marcă numită y pentru fiecare parametru pe care trebuie să-l identificați tipul de
date care intră.
Deci, aici trebuie să fie acest lucru este modul standard de a transmite date și cum se face între tipurile de date paranteze decât
un nume pentru variabila numele pentru variabila a devenit.
Orice valabil în C pentru numele unei variabile.
Ai putea suna la X Y Z orice vrei.
Pur si simplu nu puteti incepe cu un simbol al semnului de dolar.
Și apoi separați-le prin virgule obișnuiți cu parametrii convenționali din interiorul parantezelor.
Dacă nu aveați parametri, nu există date care să treacă prin funcția pe care ați
vedea-o între aceste paranteze este nulă sau dacă nu veți vedea nimic între prinți, această funcție va face tot ce va face dacă va lua
datele care i-au fost transmise.
Care sunt două variabile numite X și Y.
Și le va multiplica împreună și le va stoca într-un nume variabil rezultatul.
Sau, în acest caz, se pare că l-am corectat greșit.
Apoi, ceea ce face este printarea datelor care tipăresc datele înmulțite.
Dar, din nou, văd flexibilitatea flexibilă și utilitatea funcției, deoarece aceasta necesită date.
Poate fi afișat diferite date diferite pe baza a ceea ce îl transmiteți.
Când invocăm funcția în rutina principală aici, spunem că înmulțim două numere și trecem trecând în argumentele pe
care le trecem și valoarea 10 și 20 pe care le putem trece și numele variabilelor aici, de asemenea.
Dar în acest exemplu spunem doar 10 și 20.
Aceasta va numi funcția înmulțind două numere și va trece în datele 10
pentru primul parametru 20 pentru al doilea.
Deci X va fi egal cu 10 y va fi egal cu 20.
Deci, atunci când facem multiplicarea X de ori Y, va fi de 10 ori 20.
Rezultatul va stoca 200 și apoi va afișa acel Crizal împreună cu variabilele care
îi sunt transmise x y z.
Deci, va afișa 10 20 și apoi 200 De asemenea, observați că putem reutiliza acum această funcție.
Suntem din nou numiți cu valori de date diferite de 20 și 30 în a doua
linie aici în funcția principală.
Apoi o numim din nou a treia oară pentru a multiplica 50 cu două foarte utile pentru a putea face acest lucru pentru a
crea o funcție care să ia diferite date, ceea ce face ca reutilizarea să devină flexibilă, iar sintaxa este foarte ușor de
urmat.
Dreapta.
Sunt doar două variabile în interiorul parantezelor separate prin virgule și apoi pentru a le numi chiar mai ușor.
Tocmai ați făcut un nume și aveți cele două variabile cele două date indiferent de date separate de partea comună a
parantezelor și apoi se termină cu un semi-colon.
Puteți trece orice tip de date într-o funcție.
Poți să treci în tablouri.
De asemenea, vom vorbi despre modul în care puteți trece și alte tipuri de date și avem exemple simple aici, dar
puteți trece, de asemenea, indicii despre care nu am vorbit încă, puteți trece în structuri sau puteți obține un alt
concept pe care nu l-am avut a vorbit, dar devine într-adevăr într-adevăr cu adevărat semnificativ și util atunci
când transmiteți datele aici.
Acesta este un exemplu simplu.
Observați sintaxa pentru a studia acest lucru.
Va oferi o bună provocare pentru dvs. unde veți scrie o serie de funcții diferite.
Mulțumesc.