Innehållsförteckning:
Video: Hur väljer du den rätta kaffebryggaren? Elgiganten förklarar 2024
En del av C ++ for Dummies Cheat Sheet
Följande C ++-strukturer styr flödet av kontroll genom programmet. Om du är en erfaren programmerare kommer funktionen hos dessa strukturer att vara bekant från andra språk.
IF
Följande kommando utvärderar booleanExpression. Om det utvärderas till sant, övergår kontrollen till uttryck1. Om inte, övergår kontrollen till valfria uttryck2.
om (booleanExpression) {expressions1;} [else {expressions2;}]
WHILE
Följande kommando utvärderar booleanExpression. Om detta utvärderas till sant, övergår kontrollen till uttryck. I slutet av blocket går kontrollen tillbaka till booleanExpression och upprepar processen.
medan (booleanExpression) {expressions;}
DO … WHILE
Följande kommando utför uttryck. Det utvärderar sedan booleanExpression. Om detta utvärderas till sant returnerar kontrollen till toppen av slingan och upprepar processen.
gör {expressions;} medan (booleanExpression);
FÖR
Följande kommando utför initCommand som kan vara ett uttryck eller en variabel deklaration. Det utvärderar sedan boolExpression. Om detta utvärderas till sant, övergår kontrollen till uttryck1. Om boolExpression är falsk kommer kontrollen att passera till det första uttalandet efter den slutna spännbandet på förbandet. När uttrycken har slutförts, övergår kontrollen till uttrycket i loopExpression innan du återgår till boolExpression för att upprepa processen. Om initCommand förklarar en ny variabel, går den utom räckvidd så snart kontrollen går utanför slingan.
för (initCommand; boolExpression; loopExpression) {expressions;}
FÖR (VAR)
Standarden 2011 introducerar en andra form av loop som ibland kallas "för varje" av dess likhet med det föregång som finns på några andra språk. I den här formen tar den variabel som deklareras i deklarationen värdet av den första medlemmen i listan och exekverar expressionsblocket. När den slutgiltiga variabeln tar det andra värdet av listan och kör expressions igen. Denna process upprepas för varje värde i listan.
för (deklaration: lista) {expressions;}
SWITCH
Följande kommando utvärderar integerExpression och jämför resultatet med var och en av de angivna fallen. Om värdet befinner sig som lika med en av de konstanta integrella värdena, passerar val1, val2 etc. kontrollen till motsvarande uppsättning uttryck och fortsätter tills kontroll möter en paus.Om uttrycket inte motsvarar något av värdena övergår kontrollen till uttryckenN som standard.
switch (integerExpression) {fall val1: expressions1; ha sönder; fall val2: expressions2; ha sönder; [default: expressionsN;]}
BREAK, CONTINUE, GOTO
En fortsättning passerar kontrollen till slutet av det stängda staget av någon av loopningskontrollerna. Detta gör att slingan fortsätter med nästa iteration. Exempelvis bearbetar följande slinga primärtal mellan 1 och 20:
för (int i = 0; i <20; i ++) {// om numret inte är prime … om (! IsPrime (i)) {/ / … hoppa över till nästa värde av jag fortsätter;} // fortsätt med bearbetning}
En paus övergår kontroll till det första uttalandet efter det stängda staget av någon av loopingkommandon. Detta medför att körningen omedelbart avslutar slingan. Till exempel läser följande tecken till och slutet på filen:
medan (sant) {// läs en rad från ingående objektinmatning >> linje; // om ett fel eller slutet av filen inträffar … om (cin. eof () || cin. fail ()) {// … och avsluta looplocket;} // bearbeta raden}
A goto etiketten skickar kontroll till etiketten som tillhandahålls. Avbrottsexemplet ovan kunde ha skrivits enligt följande:
medan (sant) {// läs en rad från ingående objektinmatning >> linje; // om ett fel eller slutet av filen inträffar … om (cin. eof () || cin. fail ()) {// … och sedan avsluta slingan goto exitLabel;} // bearbeta linjen} exitLabel: // kontrollen fortsätter här