single
Utmaning: Typmodifierare för Variabler
Svep för att visa menyn
Nyckelorden short och long är typmodifierare. De används för att ändra storleken eller intervallet för en datatyp. De skapar inte nya datatyper utan ändrar egenskaperna hos befintliga typer.
type_modifiers.h
1234567// `short` is used for variables // That require smaller range of values. short int small_range_integer_variable; // `long` is used for variables // That require a larger range of values. long int large_range_integer_variable;
Ibland vet du att värdena säkert kommer att vara små. Till exempel, när du lagrar användares ålder, kommer värdet inte att överstiga 255. Sådana värden får plats inom 8 bitar.
main.cpp
12345678910#include <iostream> int main() { short int small_number = 45; long int large_number = 4000000000; std::cout << "Small number: " << small_number <<std:: endl; std::cout << "Large number: " << large_number << std::endl; }
Vad dessa typmodifierare gör är att de ändrar storleken på en typ. Medan int upptar 4 byte, upptar short int 2 byte och long int 8 byte minne.
Det finns en kortare syntax tillgänglig, du kan använda vilken som helst av dem:
shortär likvärdigt medshort int;longär likvärdigt medlong int;
Vi behöver alltså använda long (long int) för att lagra stora värden. Däremot kan vi använda short (short int) för att spara minne. Dess räckvidd är dock smalare på grund av detta. Här är en tabell med intervall som en typ kan hantera:
Svep för att börja koda
calculateEnergyConsumption-funktionen multiplicerar ett litet värde per person med en stor befolkning utan att orsaka overflow.
- Spara
averageConsumptionsom enshort int. - Spara
cityPopulationsom enint. - Multiplicera dessa och spara resultatet i en
long intmed namnettotalConsumption. - Returnera
totalConsumption. - Ändra inte värdena för
averageConsumptionellercityPopulationinuti funktionen.
Ändra inte värdena för averageConsumption och cityPopulation inuti calculateEnergyConsumption-funktionen.
Lösning
Tack för dina kommentarer!
single
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal