Hallo. Ik wil je nog een uitdaging bieden voor dit
operatorgedeelte.
Ik wil vooral het gebruik van de operator sizeof demonstreren.
Dus laten we beginnen met het beschrijven van de vereisten.
In deze uitdaging wil ik dat je een c-programma maakt dat de bytegroottes weergeeft
van basisgegevenstypen die worden ondersteund in c.
Dus de reden dat deze uitdaging best cool is, is omdat ik
het blijf zeggen, maar misschien is het niet in je
hoofd blijven hangen dat, afhankelijk
van het daadwerkelijke systeem waarop je draait, of
je nu een ander besturingssysteem of een
andere hardware-architectuur hebt, je misschien verschillende geheugengroottes voor de verschillende gegevenstypen.
Int kan 4 zijn, int kan 8 zijn.
Verdubbelt misschien 8 of 16 of wat dan ook.
En het is heel belangrijk om dat te begrijpen.
En als je begint met het hard coderen van nummers,
zal dit problemen met je programma veroorzaken. U wilt dus de operator sizeof gebruiken.
Nu hoef je je niet per se zorgen te maken als je programma op een bepaald systeem draait,
het zal altijd hetzelfde werken.
Dus deze uitdaging laat zien dat het je dwingt sizeof te gebruiken.
Nu gaan we de operator sizeof veel meer gebruiken als we het hebben
over aanwijzers, maar dit zal je een kleine uitdaging opleveren die je handen een beetje vuil
maakt met deze operator en je ook meer vertrouwd maakt met enkele formaatspecificaties gerelateerd aan aan deze exploitant.
Dus nogmaals, afhankelijk van het systeem dat u gebruikt, kan de uitvoer voor dit programma anders zijn.
Maar je moet een programma schrijven dat enkele basisgegevenstypegroottes weergeeft.
Het is vrij eenvoudig, het zou niet zo lang moeten duren.
Maar wat ik wil dat je doet, is de printf-functie gebruiken om de bytegrootte van de volgende typen weer te geven.
Int, char, lang, lang lang, dubbel, lang dubbel.
En het nut van dit programma zal zijn om het op meerdere echte computers uit
te voeren om de verschillen te zien. Maar wanneer u deze gegevens afdrukt, kunt
u het percentage zd-formaat gebruiken dat dit wordt ondersteund in C99, dus u zou goed moeten zijn.
Maar deze formaatspecificatie helpt bij het formatteren en correct afdrukken van elk formaat.
Afgezien daarvan gaat deze functie of dit programma eigenlijk gewoon
de operator sizeof gebruiken en
demonstreren hoe de grootte van het geheugen voor verschillende gegevenstypen varieert.
Nogmaals, de sleutel zal zijn om dit op meer dan één computer te testen om de verschillen te zien, maar
dit programma zou niet zo lang moeten duren.
Je hoeft niet eens variabelen te maken als je slim bent. U kunt gewoon de printf-instructies
zelf gebruiken en zien dat dit meer is voor uw kennis over de sizeof-operator.
Doe naast deze uitdagingen zeker meer uitdagingen over het gebruik van de operators
voor het converteren van verschillende typen. Er kunnen allerlei soorten conversie zijn.
Ik noemde de Fahrenheit naar Celsius, maar je zou met conversies kunnen
komen voor het converteren van
elk type dataset of gewoon in je wiskundeboek gaan en naar verschillende vergelijkingen zoeken en
programma's proberen te schrijven, die je ook zullen helpen om bekend te
raken met sommige van de verschillende operators in c en hoe
ze ondersteunen, hoe ze worden gebruikt.
Maar succes met deze. Nogmaals, het zou niet lang moeten duren.
Ik zal in de volgende lezing een snelle oplossing bieden, je laten zien hoe je dit moet doen,
maar vrij eenvoudig, gewoon met behulp van de sizeof-operator. Dank u.