Konstant vikning

uttryck med konstanta operander kan utvärderas vid kompileringstid, vilket förbättrar körtidsprestanda och minskar kodstorleken genom att undvika utvärdering vid kompileringstid.

exempel:

i kodfragmentet nedan kan uttrycket (3 + 5) utvärderas vid kompileringstiden och ersättas med konstanten 8.

int f (void){ return 3 + 5;} 

nedan är kodfragmentet efter konstant vikning.

int f (void){ return 8;} 

anmärkningar:

konstant vikning är en relativt enkel optimering.

programmerare skriver i allmänhet inte uttryck som (3 + 5) direkt, men dessa uttryck är relativt vanliga efter makroutvidgning och andra optimeringar som konstant förökning.

alla C-kompilatorer kan vika heltalskonstantuttryck som finns efter makroexpansion (ANSI C-krav). De flesta C-kompilatorer kan vika heltalskonstantuttryck som introduceras efter andra optimeringar.

vissa miljöer stöder flera flyttalsrundningslägen som kan ändras dynamiskt vid körning. I dessa miljöer måste uttryck som (1.0 / 3.0) utvärderas vid körning om avrundningsläget inte är känt vid kompileringstiden.

Lämna ett svar

Din e-postadress kommer inte publiceras.