Cel mai bun răspuns
Descriere
Funcția de bibliotecă C int fseek (flux FILE *, off long int, de unde) setează poziția fișierului flux către offset .
Declarație
Urmează declarația pentru funcția fseek ().
int fseek(FILE *stream, long int offset, int whence)
Parametri
- stream – Acesta este indicatorul către un obiect FILE care identifică fluxul.
- offset – Acesta este numărul de octeți de care se compensează de unde.
- de unde – Aceasta este poziția de unde este adăugat offsetul. Este specificat de una dintre următoarele constante –
Constant
Descriere
SEEK\_SET
Începutul fișierului
SEEK\_CUR
Poziția actuală a indicatorului de fișier
SEEK\_END
Sfârșitul fișierului
Valoare returnată
Această funcție returnează zero dacă reușește sau altfel returnează o valoare diferită de zero.
Exemplu
Următorul exemplu arată utilizarea funcției fseek ().
#include
int main ()
{
FILE *fp;
fp = fopen("file.txt","w+");
fputs("This is tutorialspoint.com", fp);
fseek( fp, 7, SEEK\_SET );
fputs(" C Programming Language", fp);
fclose(fp);
return(0);
}
Să compilăm și să rulăm programul de mai sus care va cr eate un fișier file.txt cu următorul conținut. Inițial programul creează fișierul și scrie Acesta este Tutoriale pentru Java simultaneitate, Spring AOP, Gerrit, Spring MVC, Apache Solr, Excel Power View, Sencha Touch, Tex Commands, Agile Testing, Apache Tajo, C ++ Library, MariaDB, SAP QM, SAP SOLMAN, SAP SCM, MS Access, KoaJS, OAuth2.0, Scrapy, SAP CCA, SAP PM, SAPUI5, Cognos, Internet of Things, Marketing rural, Trampolining, Golf, CakePHP, SAP EWM, Web Dynpro, Angular2, Framework7, Arduino, CherryPy, Firebase, SAP C4C, SAP Dashboard , SAP PI, ExpressJS, Design Thinking, Internet Security, PyGTK, Apache Drill, Excel Charts, Elastic Search, Computer Security, Extreme Programming, Behavior Driven Development, Conversion Rate Optimization, SAP Basis, Business Law, Kanban, Erlang, SAP Payroll, ASP.Net WP, PouchDB, MFC, SAP HR, Yii, Clojure, Aurelia, CoffeeScript, CPanel, Laravel, SAP Webi, MS SQL Server, pinterest, Indian Polity, Teradata, Windows10 dar mai târziu am resetat pointerul de scriere la poziția a 7-a de la început și am folosit instrucțiunea put () care suprascrie fișierul cu următorul conținut –
This is C Programming Language
Acum să vedem conținutul fișierului de mai sus folosind următorul program –
#include
int main ()
{
FILE *fp;
int c;
fp = fopen("file.txt","r");
while(1)
{
c = fgetc(fp);
if( feof(fp) )
{
break;
}
printf("\%c", c);
}
fclose(fp);
return(0);
}
Să compilăm și să rulăm programul de mai sus pentru a produce următorul rezultat –
This is the C Programming Language
Răspuns
Oamenii imprimă prima soluție care funcționează pentru ei.
Forma rea care obține cumva rezultate este cel mai greu lucru pentru un antrenor de a „dezvăța” în sportivul lor. Problema este că sportivul devine o parte a drumului, apoi lovește un perete cu tehnica proastă și are un timp teribil reînvățând forma corectă.
Programarea este, de asemenea, așa, dar oarecum mai ușoară, în funcție de flexibilitate din mintea programatorului și umilința perspectivelor lor față de ideea că poate nu știu fiecare afurisit ce trebuie să știe despre asta.
Adesea, la început, învățarea unui limbaj este ca și cum ai fi strălucitor stânci pe plajă și mergând „uau drăguț” și bagându-l în buzunar. În curând avem un buzunar plin de roci pe care le purtăm și credem că știm totul despre geologie.
Dar un programator trebuie să știe mai mult decât cât de cool este un instrument lingvistic.
C este o bază bună pentru cunoașterea părților unui sistem de calcul și cum să puneți piesele la un obiectiv de programare. Este, de asemenea, foarte rapid, astfel încât nuanța de fapt, astfel încât fiecare domeniu problematic să arate ca o soluție C ar fi cea mai bună, cea mai rapidă, cea mai logică abordare. Acesta este „obiceiurile dvs. C” care intră în funcțiune și este bine pentru domeniile cu probleme care vor necesita o abordare parțială, centrată pe dispozitiv, orientată pe octeți. C funcționează bine pe singura variabilă. Majoritatea programelor C jonglează cu câteva variabile independente, lucrând pe rând, majoritatea cu orice stare a programului deținută în câteva variabile independente. Fiecare afirmație, fiecare schimbare, este planificată și controlată la nivel atomic sau se ia în considerare o singură funcție la un moment dat. Fiecare bloc de memorie este contabilizat individual, cu atenție.
Dar C ++ este mai orientat către proiectarea sistemelor și subliniază interacțiunea obiectelor. Datele sunt regele, ca de obicei, dar obiectele active sunt modul în care datele sunt generate și procesate. Tot ceea ce ați învățat anterior de la C este încă valabil, dar abordarea proiectării software-ului este legată de obiecte, starea obiectelor și interfețe.
Oamenii se pot schimba – scriu mai puține litere și trimit mai multe e-mailuri, folosesc telefoanele lor pentru mai multe lucruri și computerul desktop mai puțin pe măsură ce timpul se consumă (dar telefonul lor se aseamănă mai mult cu computerul lor în fiecare zi …).
Dacă vă aflați scriind cod C-like în C ++, încercați să vedeți dacă există un API mai orientat obiect, care ar face același lucru cu mai puțin cod. Este greu, fără experiență, să vedem unde metodele OO depășesc metodele procedurale, dar au fost rezolvate de o mulțime de oameni cu adevărat inteligenți, că modelele de proiectare OO economisesc timp și se refac mai târziu în sistemele mari. C ++ este terenul de bază, unde aveți avantajele de a lucra cu ușurință atât în domeniul interfeței de octeți, cât și în domeniile de interfață orientate obiect.
Aflați STL. Folosiți-l și veți vedea cum ideile OO și filosofia de interfață a obiectelor pe care o promovează înlocuiește abordarea procedurală directă a lui C. Dar păstrați-vă abilitățile de C uzurate în buzunarul din spate, pentru că vă vor servi uneori bine.