Beste antwoord
Beschrijving
De C-bibliotheekfunctie int fseek (FILE * stream, long int offset, int waar vandaan) stelt de bestandspositie in van de stream naar de gegeven offset .
Declaration
Hieronder volgt de verklaring voor de functie fseek ().
int fseek(FILE *stream, long int offset, int whence)
Parameters
- stream – Dit is de verwijzing naar een FILE-object dat de stream identificeert.
- offset – Dit is het aantal bytes waarvan de offset moet worden gecompenseerd.
- waar vandaan – Dit is de positie vanwaar offset wordt toegevoegd. Het wordt gespecificeerd door een van de volgende constanten:
Constante
Beschrijving
SEEK\_SET
Begin van bestand
SEEK\_CUR
Huidige positie van de bestandspointer
SEEK\_END
Einde van bestand
Waarde retourneren
Deze functie retourneert nul indien succesvol, of retourneert een niet-nulwaarde.
Voorbeeld
Het volgende voorbeeld toont het gebruik van de functie 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);
}
Laten we het bovenstaande programma compileren en uitvoeren dat eate een bestand file.txt met de volgende inhoud. Aanvankelijk maakt het programma het bestand en schrijft het Dit is Tutorials voor Java Concurrency, 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, Rural Marketing, 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 maar later hadden we de schrijfwijzer vanaf het begin op de 7e positie teruggezet en de instructie puts () gebruikt die het bestand met de volgende inhoud overschreef –
This is C Programming Language
Laten we nu de inhoud van het bovenstaande bestand bekijken met behulp van het volgende programma –
#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);
}
Laten we het bovenstaande programma compileren en uitvoeren om het volgende resultaat te produceren –
This is the C Programming Language
Antwoord
Mensen drukken hun stempel op de eerste oplossing die voor hen werkt.
Een slechte vorm die op de een of andere manier resultaten oplevert, is het moeilijkste voor een coach om zijn atleet te afleren. Het probleem is dat de atleet een deel van de weg krijgt, vervolgens met de slechte techniek tegen een muur stoot en een vreselijke tijd heeft om de juiste vorm opnieuw aan te leren.
Programmeren is ook zo, maar iets gemakkelijker, afhankelijk van de flexibiliteit van de geest van de programmeur, en de nederigheid van hun kijk op het idee dat ze misschien niet alles weten wat er te weten valt.
Vaak is het leren van een taal in het begin net zoiets als glanzend rotsen op het strand en ga “wow mooi” en stop het in je zak. Al snel hebben we een zak vol stenen die we met ons meedragen en denken we alles van geologie af te weten.
Maar een programmeur moet meer weten dan alleen hoe cool een taalgereedschap is.
C is een goede basis om de onderdelen van een computersysteem te kennen en om de stukjes samen te voegen voor een programmeerdoel. Het is ook hella snel, zodat feit het oordeel vertroebelt, zodat elk probleemdomein eruitziet alsof een C-oplossing de beste, de snelste, de meest logische benadering zou zijn. Dit zijn je “C-gewoonten” die beginnen, en dat is prima voor probleemdomeinen die een fragmentarische, byte-georiënteerde, apparaatgerichte benadering vereisen. C werkt goed op de enkele variabele. De meeste C-programmas jongleren met een paar onafhankelijke variabelen, waarbij ze één voor één werken, de meeste met een programmastatus die wordt vastgehouden in een paar zelfstandige variabelen. Elke bewering, elke verandering wordt gepland en gecontroleerd op atomair niveau, of er wordt een enkele functie tegelijk beschouwd. Elk geheugenblok wordt afzonderlijk handmatig en zorgvuldig verantwoord.
Maar C ++ is meer gericht op systeemontwerp en legt de nadruk op objectinteractie. Gegevens zijn koning, zoals gewoonlijk, maar actieve objecten zijn hoe gegevens worden gegenereerd en verwerkt. Alles wat je eerder hebt geleerd van C is nog steeds geldig, maar de benadering van het ontwerpen van software gaat over objecten, objectstatus en interfaces.
Mensen kunnen veranderen – ze schrijven minder brieven en sturen meer e-mail, gebruiken hun telefoons voor meer dingen en hun desktop-pc voor minder naarmate de tijd vordert (maar hun telefoon wordt elke dag meer als hun pc …).
Als je merkt dat je C-achtige code schrijft in C ++, probeer dan als er een meer objectgeoriënteerde API is die hetzelfde zou doen met minder code. Het is moeilijk zonder ervaring om te zien waar OO-methoden procedurele methoden overstijgen, maar het is door veel echt slimme mensen uitgewerkt dat OO-ontwerppatronen tijd besparen en later in grote systemen herwerken. C ++ is het midden, waar u de voordelen heeft van gemakkelijk werken in zowel het byte-interfacedomein als de objectgeoriënteerde interfacedomeinen.
Leer de STL. Gebruik het en je zult zien hoe de OO-ideeën en de objectinterface-filosofie die het promoot, de directe procedurele benadering van C overtreffen. Maar bewaar die versleten C-vaardigheden in je achterzak, want ze zullen je soms goed van pas komen.