Acasă Finanțe personale Cum să prototip o funcție în programarea C - dummies

Cum să prototip o funcție în programarea C - dummies

Video: C Programming Tutorial for Beginners 2024

Video: C Programming Tutorial for Beginners 2024
Anonim

Ce se întâmplă atunci când nu prototip? Ca și în cazul programării C, atunci când mergeți în sus, compilatorul sau link-ul vă informează cu un mesaj de eroare - sau programul nu funcționează corect. Nu este sfârșitul lumii - nu, nu cum ar fi programarea unui robot militar sau proiectarea unui cod genetic pentru o nouă specie de Venus flytrap.

FUNCȚIE DE BAZĂ; NU RETURNĂ

#include promptul void (); / * prototipul functiei * / int main () {int loop; inputul de tip char [32]; loop = 0; în timp ce (buclă);}

Exercițiul 1 : Modificați codul sursă din funcția de bază; ->

Eroare compilator sunt lucruri minunate, incantatoare de precizie dar totusi criptice.Aici este mesajul de eroare generat de Cod:: Blocuri, deși numai părțile relevante ale mesajului:

13 Avertisment: declarația implicită a funcției " prompt "23 Avertisment: tipurile de conflicte pentru" prompt "13 Avertisment: declarația implicită implicită a" promptului "a fost aici

Primul avertisment apare la linia 13 din fișierul cu cod sursă, unde funcția prompt () () funcția.Compilatorul vă spune că utilizați o funcție fără un prototip.Așa cum se spune în mesajul de eroare, declarați implicit o funcție.Acesta este o eroare nu-nu, dar nu complet. >

Al doilea avertisment apare atunci când funcția prompt () se află în program.În codul sursă este la linia 23. Avertizările precizează că pro mpt () a fost deja declarat (la rândul 11) și că a doua utilizare poate intra în conflict cu prima.

Avertismentul final este o referință înapoi la locul unde a fost apelată funcția, din nou la rândul 13.

Pentru a spune în mod succint: Compilatorul nu are nicio idee despre ce se întâmplă cu funcția prompt (). Codul dvs. se compilează, dar executarea acestuia este riscant.

Puteți trage concluzia că prototiparea este o necesitate absolută în codul dvs. C. Nu este chiar adevărat. Puteți evita prototipul prin reordonarea funcțiilor din codul sursă. Atâta timp cât o funcție este listată înainte de a fi utilizată, nu aveți nevoie de un prototip.

Exercițiu

2

: Editați codul sursă din exercițiul 10-3. Eliminați prototipul de funcții care a fost comentat la Linia 3. Tăiați și inserați (deplasați) funcția prompt () din partea inferioară a listei cu cod sursă în partea de sus, deasupra funcției principal (). Salvați, construiți și executați. Evitarea funcției Prototype arată soluția pentru Exercițiul 2. AVERTISMENT PROTOTYPE FUNCTION

#include / * Afișare prompt * / void prompt (void) {printf ("C: DOS> int main () {buclă int; inputul de tip char [32]; loop = 0; în timp ce (bucla <5) {prompt (); fgets (intrări, 31, stdin); (0);}

În primul rând, scrierea funcției principale (), urmată de alte funcții, permite o mai bună citire, deși aveți libertatea de a vă pune mai întâi propriile funcții pentru a evita prototipul.Și dacă nu, rețineți că alți programatori ar putea face acest lucru, astfel încât să nu vă surprindeți când o vedeți.

Mesaje de eroare compilatoare în Cod:: Blocurile au paranteze după ele. Comentariile paranteze se referă la comutatorul

sau opțiunea tradițională de linie de comandă, care permite verificarea unui anumit avertisment. De exemplu, mesajele de eroare din Exercițiul 1 sunt citite integral: 11 Avertisment: declarația implicită a funcției "prompt" (-Wimplicit-function-declaration) 20 Avertisment: >

Cum să prototip o funcție în programarea C - dummies

Alegerea editorilor

Administrator de rețea: Zone de căutare inversă - dummies

Administrator de rețea: Zone de căutare inversă - dummies

Interogări DNS obișnuite sunt interogări de căutare înainte corespunde unui nume de domeniu complet calificat. O căutare inversă este opusul unei căutări forward: returnează numele de domeniu complet calificat al unei gazde pe baza adresei sale IP. Căutările inverse sunt posibile din cauza unui domeniu special numit ...

Rețea Elemente de bază: Clienți și servere - manechine

Rețea Elemente de bază: Clienți și servere - manechine

Computerul de rețea care conține hard disk-urile, imprimantele și alte resurse care sunt partajate cu alte calculatoare de rețea se numește un server. Acest termen vine în repetate rânduri, deci trebuie să-l amintiți. Scrie-o pe spatele mâinii tale stângi. Orice computer care nu este un server este numit client. Aveți ...

Retea Bazele: Poduri - dummies

Retea Bazele: Poduri - dummies

O punte este un dispozitiv care conecteaza doua retele astfel incat sa actioneze ca si cum ar fi o rețea. Podurile sunt utilizate pentru a împărți o rețea mare în două rețele mai mici din motive de performanță. Vă puteți gândi la un pod ca pe un repetor inteligent. Repetoarele ascultă semnale care coboară pe un cablu de rețea, amplifică ...

Alegerea editorilor

ÎMprumuta și tweak idei de la alte comunități online - dummies

ÎMprumuta și tweak idei de la alte comunități online - dummies

, Mai degrabă decât să ia ideile altcuiva complet pentru dvs. comunitate online, încercați să riffați pe aceeași idee, dar nu atât de mult încât este evident că nu sunteți creierul din spatele brainstorming-ului. Idei sunt acolo pentru a lua, dar nu ar fi mai degrabă văzute ca cineva inovatoare, nu cineva care scours pe web ...

Branding Blogul tău

Branding Blogul tău

Branding blog-ul tău merge mult spre a face dacă este ușor de recunoscut pentru cititorii tăi. Când vedeți un punct roșu în interiorul unui cerc roșu, ce magazin vine în minte? Ce zici de acele arcuri de aur? Un nume de marcă apare în minte atunci când vedeți simbolul swoosh? La fel ca magazinele populare, restaurantele și încălțămintea ...

Construiți un Blog Mama care este Sellable - dummies

Construiți un Blog Mama care este Sellable - dummies

Dacă obiectivul pe termen lung este de a vinde blogul dvs. ar trebui să o construiască cu acest scop în minte. Evitați asocierea prea intensă a blogului cu marca dvs. personală. Un blog care poate fi valoros cu orice scriitor la cârma trebuie să îndeplinească majoritatea, dacă nu toate, următoarele criterii: Blogul este concentrat ...

Alegerea editorilor

Cum să creați o nouă campanie de anunțuri LinkedIn - dummies

Cum să creați o nouă campanie de anunțuri LinkedIn - dummies

LinkedIn oferă servicii de publicitate pentru afacerea dvs. Dacă vă decideți să utilizați LinkedIn ca instrument de marketing, va trebui doar să obțineți o nouă campanie de anunțuri în lucrări. Când sunteți gata să începeți o nouă campanie, urmați acești pași:

Opțiuni de filtrare pentru anunțul dvs. LinkedIn - manechine

Opțiuni de filtrare pentru anunțul dvs. LinkedIn - manechine

Ce opțiuni de filtrare aveți pentru anunțul dvs. LinkedIn? Alte rețele de publicitate vă permit să filtrați publicul vizat de câteva atribute cunoscute ale persoanei care vă va vedea anunțul, sexul și locația membrilor din public. LinkedIn vă permite să faceți un pas mai departe permițându-vă ...

Oferind și primind viziuni pe LinkedIn - manechine

Oferind și primind viziuni pe LinkedIn - manechine

Deși mulți oameni cred că "Nu este ceea ce știi, știi, "care este unul dintre principalele motive pentru care LinkedIn este atât de valoros, mulți oameni (recrutorii, angajații, directorii executivi, investitorii și altele) sunt foarte interesați de ceea ce știi. În mod logic, oamenii care vă cunosc cel mai bine sunt oamenii din rețeaua dvs., care ...