рдПрд▓рдПрд▓рд╡реАрдПрдо рдХреЗ рд╡рд┐рд▓реНрд╕ рдореЗрдВ рд╡рд┐рд▓рдореНрдм рдХрд░рддреЗ рд╣реБрдП , рдореИрдВрдиреЗ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рдЦреБрдж рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдХреА: рдХреЛрдб рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд┐рддрдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИред рдЗрд╕рд▓рд┐рдП, рдореИрдВрдиреЗ рдЖрдкрдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рди рдореЗрдВ рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рдореАрдХреНрд╖рд╛ рд▓реЗрдЦреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрдиреА рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред рдЗрди рд▓реЗрдЦреЛрдВ рдореЗрдВ рдореИрдВ рдЕрдиреБрдХреВрд▓рди рдХрд╛рд░реНрдп рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЛ "рдЪрдмрд╛рдиреЗ" рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ рдФрд░ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реВрдВрдЧрд╛ред
рдореИрдВ "рд╕рдордЭ рдХреА рдЬрдЯрд┐рд▓рддрд╛" рдХреЗ рдмрдврд╝рддреЗ рдХреНрд░рдо рдореЗрдВ рдЕрдиреБрдХреВрд▓рди рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрддреНрдпрдВрдд рд╡реНрдпрдХреНрддрд┐рдкрд░рдХ рд╣реИред
рдФрд░ рдПрдХ рдФрд░ рдмрд╛рдд: рдХреБрдЫ рдирд╛рдо рдФрд░ рд╢рд░реНрддреЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИрдВ рдФрд░ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ "рдХрд┐рд╕реА-рдЬреИрд╕реЗ" рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдкрдХреЛ рдХрдИ рд╡рд┐рдХрд▓реНрдк рджреВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдореИрдВ рджреГрдврд╝рддрд╛ рд╕реЗ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдЕрдВрдЧреНрд░реЗрдЬреА рд╢рдмреНрджреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐
(рдЫреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд╛рдлреА рд╕рд┐рджреНрдзрд╛рдВрдд)
рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рд╣рдо рдорд╣рд╛рди рд╡рд┐рдЪрд╛рд░реЛрдВ рдФрд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдореЗрдВ рдЧреЛрддрд╛ рд▓рдЧрд╛рддреЗ рд╣реИрдВ, рдЪрд▓реЛ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рд╕рд╛рде рдереЛрдбрд╝рд╛ рдКрдм рдЬрд╛рддреЗ рд╣реИрдВ: рд╣рдо рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдПрдВрдЧреЗ рдХрд┐ рдЕрдиреБрдХреВрд▓рди рдХреНрдпрд╛ рд╣реИрдВ, рд╡реЗ рдХреНрдпрд╛ рд╣реИрдВ рдФрд░ рд╡реЗ рдХреНрдпрд╛ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ рд╣реИрдВред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдЗрдП рдПрдХ рдкрд░рд┐рднрд╛рд╖рд╛ рджреЗрдВ (
рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ рд╕реЗ ):
рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛ рдПрдХ рд╕рдВрд╢реЛрдзрди рд╣реИ рдЬреЛ рдПрдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрдВрдкрд╛рдЗрд▓рд░ рдпрд╛ рджреБрднрд╛рд╖рд┐рдпрд╛ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдпрд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рдмрд┐рдирд╛ рдЙрдирдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛ рд╕рдХреЗред
рдЗрд╕ рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ рдЕрдВрддрд┐рдо рддреАрди рд╢рдмреНрдж рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИрдВ: рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХреИрд╕реЗ рд╕реБрдзрд╛рд░рддрд╛ рд╣реИ, рдЗрд╕реЗ рдХрд┐рд╕реА рднреА рдкрд░рд┐рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдореВрд▓ рдЕрд░реНрде рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
рдЬреАрд╕реАрд╕реА рдореЗрдВ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╡рд┐рднрд┐рдиреНрди
рд╕реНрддрд░ рд╣реИрдВ (рдореИрдВ рджреГрдврд╝рддрд╛ рд╕реЗ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдЗрди рд▓рд┐рдВрдХ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВ) ред
рд╣рдо рдФрд░ рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВ: рдЕрдиреБрдХреВрд▓рди
рдорд╢реАрди-рд╕реНрд╡рддрдВрддреНрд░ (рдЙрдЪреНрдЪ-рд╕реНрддрд░) рдФрд░
рдорд╢реАрди-рдирд┐рд░реНрднрд░ (рдирд┐рдореНрди-рд╕реНрддрд░) рд╣реИрдВ ред рд╡рд░реНрдЧреАрдХрд░рдг рдХрд╛ рдЕрд░реНрде рдирд╛рдореЛрдВ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рд╣реИ, рдорд╢реАрди-рдирд┐рд░реНрднрд░ рдЕрдиреБрдХреВрд▓рди рдореЗрдВ рдХрдВрдХреНрд░реАрдЯ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреА рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдЕрдиреБрдХреВрд▓рди рдореЗрдВ, рд╡реЗ рдХреЛрдб рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд╕реНрддрд░ рдкрд░ рд╣реЛрддреЗ рд╣реИрдВред
рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛ рднреА рд╡рд░реНрдЧреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрдирдХреЗ рдЖрд╡реЗрджрди рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╕реНрдерд╛рдиреАрдп (рдСрдкрд░реЗрдЯрд░, рдСрдкрд░реЗрдЯрд░реЛрдВ рдХрд╛ рдЖрдзрд╛рд░, рдЖрдзрд╛рд░ рдЗрдХрд╛рдИ), рдЗрдВрдЯреНрд░рд╛-рдкреНрд░рдХреНрд░рд┐рдпрд╛, рдЕрдВрддрд░-рдкреНрд░рдХреНрд░рд┐рдпрд╛, рдЗрдВрдЯреНрд░рд╛-рдореЙрдбреНрдпреВрд▓ рдФрд░ рдЧреНрд▓реЛрдмрд▓ (рдкреВрд░реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдЕрдиреБрдХреВрд▓рди, "рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рджреМрд░рд╛рди рдЕрдиреБрдХреВрд▓рди",
"рд▓рд┐рдВрдХ-рдЯрд╛рдЗрдо рдЕрдиреБрдХреВрд▓рди" )ред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдм рд╕реЛ рдЧрдП рд╣реИрдВ, рдЪрд▓реЛ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдЗрд╕ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЦреБрдж рдХреЛ рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдирд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ ...
рд▓рдЧрд╛рддрд╛рд░ рддрд╣
(рд╕реНрдерд┐рд░рд╛рдВрдХ рдХрдо / рдХрдо рдХрд░реЗрдВ)
рд╕рдВрдХрд▓рдХ рдореЗрдВ рд╕рдмрд╕реЗ рд╕рд░рд▓, рд╕рдмрд╕реЗ рдкреНрд░рд╕рд┐рджреНрдз рдФрд░ рд╕рдмрд╕реЗ рдЖрдо рдЕрдиреБрдХреВрд▓рдиред
"рдлреЛрд▓реНрдбрд┐рдВрдЧ рдХреЙрдиреНрд╕реНрдЯреЗрдВрдЯреНрд╕" рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдПрдХреНрд╕рдкреНрд░реЗрд╢рдиреНрд╕ (рдпрд╛ рд╕рдмрдПрдХреНрд╕рдкреНрд░реЗрд╕) рдХреА рдЦреЛрдЬ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХреЗрд╡рд▓ рдХреЙрдиреНрд╕реНрдЯреЗрдВрдЯ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЗрд╕ рддрд░рд╣ рдХреЗ рднрд╛рд╡реЛрдВ рдХреА рдЧрдгрдирд╛ рд╕рдВрдХрд▓рди рдЪрд░рдг рдореЗрдВ рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдкрд░рд┐рдгрд╛рдореА рдХреЛрдб рдореЗрдВ рдЧрдгрдирд╛ рдореВрд▓реНрдп рдореЗрдВ "рдврд╣" рдЬрд╛рддреЗ рд╣реИрдВред
рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ (
рд╕рд┐рд░ рд╕реЗ рдордХреНрдЦреА рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░, рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд┐рдВрдереЗрдЯрд┐рдХ, рддреБрдЪреНрдЫ, рдЕрдореВрд░реНрдд, рдЕрд░реНрдерд╣реАрди, рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рд╕реЗ рджреВрд░, рдЖрджрд┐ ... рдФрд░ рд╕рднреА рдЙрджрд╛рд╣рд░рдг рдЗрд╕ рддрд░рд╣ рд╣реЛрдВрдЧреЗ):
рдЕрдиреБрдХреВрд▓рди рд╕реЗ рдкрд╣рд▓реЗ | рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рдж |
---|
#include <stdlib.h> int main(int argc, char **argv) { struct point { int x; int y; } p;
int a = 32*32; int b = 32*32*4; long int c; // c = (a + b) * (4*4*sizeof(p) - 2 + 32) return 0; } | #include <stdlib.h> int main(int argc, char **argv) { struct point { int x; int y; } p; int a = 1024; long int c; return 0; } |
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдареАрдХ рд╣реЛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЕрдиреБрдХреВрд▓рди рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдВрдкрд╛рдЗрд▓рд░ рдЪрд╛рд▓рд╛рдХ рд╣реЛ рдЧрдП рд╣реИрдВ рдФрд░ рдЖрдЧреЗ рдмрдврд╝ рдЧрдП рд╣реИрдВред рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд╕рдВрд░рдЪрдирд╛
"p"
рдЖрдХрд╛рд░ (
sizeof
) рднреА рдПрдХ рд╕реНрдерд┐рд░ рд╣реИ, рдФрд░ рд╕рдВрдХрд▓рдХ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╣реИрдВ:
рдЖрдХрд╛рд░ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░реЗрдВ | рд╣рдо рдкрддрди рдХреЛ рдкреВрд░рд╛ рдХрд░рддреЗ рд╣реИрдВ |
---|
... c = (a + b) * (16*8 + 30); ... | ... c = (a + b) * 158; ... |
рдареАрдХ рд╣реИ ... рдХреБрдЫ рдкреНрд░реЛрд╕реЗрд╕рд░ рдЪрдХреНрд░, рдпрд╣ рдЕрдиреБрдХреВрд▓рди рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╣рдореЗрдВ рдмрдЪрд╛рддрд╛ рд╣реИред
рдпрджрд┐ рд╣рдорд╛рд░рд╛ рдХреЛрдб рдПрдХ
рд╕рд╛рд░ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдЯреНрд░реА (
рдПрдПрд╕рдЯреА ) рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рд╕рдм рдХреБрдЫ рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИред рдлрд┐рд░, рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдФрд░ рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЗрд╡рд▓ рд╕рдорд╛рди рдорд╛рди рд╡рд╛рд▓реЗ рд╕рдорд╛рди рд╕реНрддрд░ (рдпрд╛рдиреА, рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдкреВрд░реНрд╡рдЬ рд╣реЛрдиреЗ) рдХреЗ рдкреЗрдбрд╝ рдХреЗ рдиреЛрдбреНрд╕ рдХреА рдЦреЛрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рддрдм рдореВрд▓ (рдкреИрд░реЗрдВрдЯ) рдореЗрдВ рдорд╛рди рдХрд╛ рдкрддрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рдПрдХ рднрд╛рд╡ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЗрдбрд╝ рдХреЗ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ, рд╣рдорд╛рд░реЗ
"int a = 32*32;"
:
рдпрд╣реА рд╣реИ, рд╣рдорд╛рд░реЗ рдПрдПрд╕рдЯреА рдкреЗрдбрд╝ рдХреА рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрд░рдХреЗ, рд╣рдо рдРрд╕реЗ рд╕рднреА рд╕реНрдерд┐рд░ рднрд╛рд╡реЛрдВ рдХреЛ рдзреНрд╡рд╕реНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╡реИрд╕реЗ, рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдг рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕рд░рд▓реАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдмрдЬрд╛рдп,
рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ (рд╕рдВрдШрдЯрди) рдХреЗ
рд╕рд╛рде рд╕рдВрдЪрд╛рд▓рди рдпрд╛
рддрд╛рд░ рдФрд░ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд▓рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдкрд╛рдпрдерди рдХреЗ "
'-' * 10
" рдХреЗ рдЕрдиреБрд░реВрдк) рдпрд╛ рд╕реНрд░реЛрдд рднрд╛рд╖рд╛ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд
рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рд╕реНрдерд┐рд░рд╛рдВрдХред рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧред
рд▓рдЧрд╛рддрд╛рд░ рдкреНрд░рд╕рд╛рд░
(рд╕реНрдерд┐рд░рд╛рдВрдХ рдХрд╛ рдкреНрд░рд╕рд╛рд░)
рдпрд╣ рдЕрдиреБрдХреВрд▓рди рдЖрдорддреМрд░ рдкрд░ "рдирд┐рд░рдВрддрд░ рддрд╣" (рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдкреВрд░рдХ рд╣реИрдВ) рдХреЗ рд╕рдВрдпреЛрдЬрди рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рдПрдХ рдЕрд▓рдЧ рдЕрдиреБрдХреВрд▓рди рд╣реИред
"рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рдкреНрд░рд╕рд╛рд░" рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЙрди рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреА рдЦреЛрдЬ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬреЛ рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рдХрд┐рд╕реА рднреА рд╕рдВрднрд╛рд╡рд┐рдд рдорд╛рд░реНрдЧ рдкрд░ рд╕реНрдерд┐рд░ рд░рд╣реЗрдВрдЧреА (рдЗрд╕ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ) рдФрд░ рдЗрди рдореВрд▓реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдЙрдирдХрд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрдиред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рд╕реБрдирдиреЗ рдореЗрдВ рдЬрд┐рддрдирд╛ рдЖрд╕рд╛рди рд▓рдЧрддрд╛ рд╣реИ, рдЙрд╕рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рд╕рд░рд▓ рд╣реИ - рдЪрд▓реЛ рд╡рд╣реА рдЙрджрд╛рд╣рд░рдг рд▓реЗрддреЗ рд╣реИрдВ рдЬреЛ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рдЙрдкрдпреЛрдЧ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рддрдереНрдп рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рдХрд┐ рд╣рдо рдкрд╣рд▓реЗ рд╣реА
"рдирд┐рд░рдВрддрд░ рддрд╣" рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░рдХреЗ рдЗрд╕ рдкрд░ рдЪрд▓ рдЪреБрдХреЗ рд╣реИрдВ:
рдЕрдиреБрдХреВрд▓рди рд╕реЗ рдкрд╣рд▓реЗ | рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рдж |
---|
#include <stdlib.h> int main(int argc, char **argv) { struct point { int x; int y; } p; int a = 1024; int b = 4096; long int c; return 0; } | #include <stdlib.h> int main(int argc, char **argv) { struct point { int x; int y; } p; int a = 1024; int b = 4096; long int c; return 0; } |
рдпрд╣реА рд╣реИ, рд╣рдорд╛рд░реЗ рдореВрд▓ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдХрд┐рд╕реА рднреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рдерд╛ред рдХреНрдпрд╛ рд╣реБрдЖ рдерд╛? рдпрд╣ рд╕рд░рд▓ рд╣реИ ... рдЪреВрдВрдХрд┐ рдЪрд░
"a"
рдФрд░
"b"
рдХреЗ рдорд╛рди рдЙрдирдХреА рдШреЛрд╖рдгрд╛ рдФрд░ рдЧрдгрдирд╛ рдореЗрдВ рдореВрд▓реНрдп
"c"
рдЙрдкрдпреЛрдЧ рдХреЗ рдмреАрдЪ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рдВрдХрд▓рдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдЕрдкрдиреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрд╣реА рд╣реИ, рд╕рдВрдХрд▓рдХ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕рдХрд╛ рдореВрд▓реНрдп рд╣рдореЗрд╢рд╛ рд╕реНрдерд┐рд░ рд░рд╣реЗрдЧрд╛ (рдпрд╛ рдмрд▓реНрдХрд┐, рдЪрд╛рд╣реЗ рд╡рд╣ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИ)ред рдЪрд▓реЛ рд╕реНрдХреЗрдЪ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ:
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╕рдВрдХрд▓рдХ рдЕрдЧрд▓реЗ рдЕрдиреБрдХреВрд▓рди рд░рди рдХреЗ рджреМрд░рд╛рди рдЪрд░
"a"
рдФрд░
"b"
рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдЖрд░реЗрдЦ рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдмреНрд▓реЙрдХ рдП рдореЗрдВ рдЪрд░
"b"
рдФрд░ рдмреНрд▓реЙрдХ рдмреА рдореЗрдВ рдЪрд░
"b"
рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рди рддреЛ рдПрдХ рдФрд░ рди рд╣реА рджреВрд╕рд░реЗ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдмрд╛рдж рдХреЗ рдмреНрд▓реЙрдХ (рдП, рдмреА, рд╕реА) рдореЗрдВ рдореВрд▓реНрдп рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдорд╛рдорд▓рд╛ рддреБрдЪреНрдЫ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреВрд░рд╛ рдХрд╛рд░реНрдпрдХреНрд░рдо рд░реИрдЦрд┐рдХ рд╣реИ рдФрд░ рддрдерд╛рдХрдерд┐рдд
рдЖрдзрд╛рд░ рдЗрдХрд╛рдИ ( рдмреАрдмреА ) рд╣реИ ред рд▓реЗрдХрд┐рди рдЖрдзрд╛рд░ рдЗрдХрд╛рдИ рдореЗрдВ рдПрдХ рдЪрд░ рдХреА "рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓рддрд╛" рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╕рднреА рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реИред рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рд╕рд╢рд░реНрдд рдирд┐рд░реНрдорд╛рдг, рд▓реВрдк, рдмрд┐рдирд╛ рд╢рд░реНрдд рдХреВрдж рд╢рд╛рдорд┐рд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдлрд┐рд░, рдПрдХ рдЪрд░ рдХреА "рдкрд░рд┐рд╡рд░реНрддрдирд╢реАрд▓рддрд╛" рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдзрд╛рд░ рдмреНрд▓реЙрдХ рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рд░реНрджреЗрд╢рд┐рдд рдЧреНрд░рд╛рдл рдмрдирд╛рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдХрд┐рдирд╛рд░реЛрдВ - рдмреЗрд╕ рдмреНрд▓реЙрдХреЛрдВ рдХреЗ рдмреАрдЪ рдирд┐рдпрдВрддреНрд░рдг рдХрд╛ рд╣рд╕реНрддрд╛рдВрддрд░рдгред рдЗрд╕ рдЧреНрд░рд╛рдл рдХреЛ
рдХрдВрдЯреНрд░реЛрд▓ рдлреНрд▓реЛ рдЧреНрд░рд╛рдл (
CFG ) рдХрд╣рд╛ рдЬрд╛рддрд╛
рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдИ рдЕрдиреБрдХреВрд▓рди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдХреЙрд▓рдо рдореЗрдВ, рдЖрдк рдЙрди рд╕рднреА рдмреБрдирд┐рдпрд╛рджреА рдмреНрд▓реЙрдХреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдЪрд░ рдХреЗ рдЖрд░рдВрдн рд╕реЗ рдЗрд╕рдХреЗ рдЙрдкрдпреЛрдЧ рддрдХ рдЬрд╛рдиреЗ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЪрд░ рдХрд╛ рдорд╛рди рдЗрд╕рдореЗрдВ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИред рдпрджрд┐ рдЗрд╕реЗ рдмрджрд▓рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ, рддреЛ рд╕рдВрдХрд▓рдХ рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХ рд╕реНрдерд┐рд░ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдореВрд▓реНрдп рдХреЛ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИред
рд▓рдЧрд╛рддрд╛рд░ рдкреНрд░рд╕рд╛рд░ рдФрд░ рд▓рдЧрд╛рддрд╛рд░ рдореЛрдбрд╝ рдЖрдорддреМрд░ рдкрд░ рдХрдИ рдмрд╛рд░ рдЪрд▓рддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдХрд┐ рд╡реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рдореЗрдВ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред
рдкреНрд░рдЪрд╛рд░ рдкреНрд░рд╕рд╛рд░ рдХреА рдкреНрд░рддрд┐
(рдкреНрд░рддрд┐рдпреЛрдВ рдХрд╛ рд╡рд┐рддрд░рдг)
рдФрд░ рдпрд╣ рджреЛ рдкрд┐рдЫрд▓реЗ рдЕрдиреБрдХреВрд▓рди рдХрд╛ рдПрдХ рд╕рд╛рдереА рд╣реИ, рд▓рдЧрднрдЧ рдЬреБрдбрд╝рд╡рд╛рдВ рднрд╛рдИ "рд▓рдЧрд╛рддрд╛рд░ рддрд╣", рдЬреЛ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рдорд╛рди рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЕрдирд╛рд╡рд╢реНрдпрдХ (рдордзреНрдпрд╡рд░реНрддреА) рдЪрд░ рдЕрд╕рд╛рдЗрдирдореЗрдВрдЯ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рджрд┐рд▓рд╛рддрд╛ рд╣реИ, рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдордзреНрдпрд╡рд░реНрддреА рдЪрд░ рдХреА рдЬрдЧрд╣ред рдпрд╣ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд╕рд╛рде рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдЧрд╛:
рдЕрдиреБрдХреВрд▓рди рд╕реЗ рдкрд╣рд▓реЗ | рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рдж |
---|
int calc(int x, int y) { int a = x; int b = y; return a * a + b * b; } | int calc(int x, int y) { } |
рдбреЗрдб рдХреЛрдб рдПрд▓рд┐рдорд┐рдиреЗрд╢рди (DCE)
(рджреБрд░реНрдЧрдо рдХреЛрдб рдХрд╛ рдЙрдиреНрдореВрд▓рди / рдмрд╣рд┐рд╖реНрдХрд░рдг)
рдкреНрд░рджрд░реНрд╢рди рдЕрдиреБрдХреВрд▓рди рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓, рд▓реЗрдХрд┐рди, рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдереЛрдбрд╝рд╛ рд╕реБрдзрд╛рд░ред рдпрд╣ рд╕рд░рд▓ рд╣реИ: рдХреЛрдб рдЬрд┐рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЙрд╕реЗ рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЖрдЗрдП рджреЗрдЦрддреЗ рд╣реИрдВ "рдХреЛрдб рдХреЗ рдбреЗрдб
рд▓реЛрдб " рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг:
рдЕрдиреБрдХреВрд▓рди рд╕реЗ рдкрд╣рд▓реЗ | рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рдж |
---|
#include <stdlib.h> #include <stdio.h> int main(int argc, char **argv) { while(true) { printf("Hi, I'm very hardy code =) !"); } printf("Hi, I'm dead code =( !") return 0; } | #include <stdlib.h> #include <stdio.h> int main(int argc, char **argv) { while(true) { printf("Hi, I'm very hardy code =) !"); } return 0; } |
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓рд╛рдЗрди "
printf("Hi, I'm dead code =( !");
"рдХрд┐рд╕реА рднреА рдкрд░рд┐рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЕрдкреНрд░рд╛рдкреНрдп рд╣реИ: рдпрд╛ рддреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЕрдВрддрд╣реАрди рд░реВрдк рд╕реЗ рдЪрд▓рддрд╛ рд╣реИ, рдпрд╛ рдпрд╣" рдЬрдмрд░рджрд╕реНрддреА рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред "рдЪрд▓рд┐рдП рдПрдХ рджреЛ рдФрд░ рдЙрджрд╛рд╣рд░рдг рджреЗрддреЗ рд╣реИрдВ:
рдЕрдиреБрдХреВрд▓рди рд╕реЗ рдкрд╣рд▓реЗ | рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рдж |
---|
#include <stdlib.h> #include <stdio.h> int main(int argc, char **argv) { int y = 0; int x; scanf("%d", &x); if (x >= 10) { printf("x >= 10 \n"); return 0; } else { printf("x < 10 \n"); return 0; } printf("x = %d \n", &x) } | #include <stdlib.h> #include <stdio.h> int main(int argc, char **argv) { int x; scanf("%d", &x); if (x >= 10) { printf("x >= 10 \n"); return 0; } else { printf("x < 10 \n"); return 0; } } |
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рдЯрд┐рдкреНрдкрдгреА рдХреЗ рдмрд┐рдирд╛ рднреА рд╕реНрдкрд╖реНрдЯ рд╣реИ: рд▓рд╛рдЗрди "
printf("x = %d \n", &x);
" рд╕рд╛рде рд╣реА рдкрд┐рдЫрд▓реЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдХрд┐рд╕реА рднреА рдкреНрд░реЛрдЧреНрд░рд╛рдо рдирд┐рд╖реНрдкрд╛рджрди рдкрде рдХреЗ рд▓рд┐рдП рдЕрдкреНрд░рд╛рдкреНрдп рд╣реИ, рдФрд░ рдореБрдЦреНрдп рдлрд╝рдВрдХреНрд╢рди рдХреА рдкрд╣рд▓реА рдкрдВрдХреНрддрд┐ рдореЗрдВ рдШреЛрд╖рд┐рдд рдЪрд░ y рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ред
рдЦреИрд░, рдЗрд╕ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рдЙрджрд╛рд╣рд░рдг:
рдЕрдиреБрдХреВрд▓рди рд╕реЗ рдкрд╣рд▓реЗ | рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рдж |
---|
#include <stdlib.h> int sum(int x, int y) { return x + y; } int sub(int x, int y) { return x - y; } int main(int argc, char **argv) { return sum(2, 2); } | #include <stdlib.h> int sum(int x, int y) { return x + y; } // // // // int main(int argc, char **argv) { return sum(2, 2); } |
рдФрд░ рдлрд┐рд░, рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ: рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдХрд┐рд╕реА рднреА рд╕реНрдерд╛рди рдкрд░ рдЙрдк рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдирд╣реАрдВ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЗрд╕реЗ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдПрдХ рдУрд░, рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ "рдбреЗрдб рдХреЛрдб" рдмрд╣реБрдд рдЖрд╕рд╛рдиреА
рд╕реЗ рдХрдВрдЯреНрд░реЛрд▓ рдлреНрд▓реЛ рдЧреНрд░рд╛рдл рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдореГрдд рдХреЛрдб рд╣реИ, рддреЛ рдЧреНрд░рд╛рдл рдпрд╛ рддреЛ рдЕрд╕рдВрдЧрдд рд╣реЛрдЧрд╛ рдФрд░ рдЖрдк рдЧреНрд░рд╛рдл рдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЯреБрдХрдбрд╝реЗ "рдлреЗрдВрдХ" рд╕рдХрддреЗ рд╣реИрдВред рджреВрд╕рд░реА рдУрд░, рдЦрд╛рддреЗ рдХреЗ рдЕрдВрдХрдЧрдгрд┐рдд рдФрд░ рдХрдИ
рдЕрдиреНрдп рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ - рдпрд╣ рд╣рдореЗрд╢рд╛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреЛрдИ рдХреЛрдб "рдореГрдд" рд╣реИ рдпрд╛ рдирд╣реАрдВред
рд╕рд╛рдорд╛рдиреНрдп рдЙрдк-рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдЙрдиреНрдореВрд▓рди (CSE)
(рдЖрдо рдЙрдкрд╕рдВрд╣рд╛рд░реЛрдВ рдХрд╛ рдЙрдиреНрдореВрд▓рди)
рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рдФрд░ "рд╕реБрдВрджрд░" рдЕрдиреБрдХреВрд▓рдиред рдЗрд╕рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: рдпрджрд┐ рдЖрдк рджреЛ рдпрд╛ рдЕрдзрд┐рдХ рдмрд╛рд░ рдХрд┐рд╕реА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреА рдЧрдгрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕реЗ рдПрдХ рдмрд╛рд░ рдЧрдгрдирд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рдФрд░ рдлрд┐рд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рднреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЦреИрд░, рд╣рдо рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рдмрд┐рдирд╛ рдХрд╣рд╛рдБ рд╣реИрдВ:
рдЕрдиреБрдХреВрд▓рди рд╕реЗ рдкрд╣рд▓реЗ | рдЕрдиреБрдХреВрд▓рди рдХреЗ рдмрд╛рдж |
---|
int calc(int x, int y) { int a = (x + y) * (x - y) - x * y; int b = x * (x + y) - y * (x - y); return (a * b + x - y) * (a * b + x + y); } | int calc(int x, int y) { int tmp1 = x + y; int tmp2 = x - y; int a = tmp1 * tmp2 - x * y; int b = x * tmp1 - y * tmp2; int tmp3 = a * b; return (tmp3 + tmp2) * (tmp3 + tmp1); } |
рд╣рд╛рдВ, рдпрд╣ рдЕрдиреБрдХреВрд▓рд┐рдд рдХреЛрдб рдмрд╣реБрдд рдмреБрд░рд╛ рдФрд░ рдЕрдзрд┐рдХ рдмреЛрдЭрд┐рд▓ рд▓рдЧ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ "рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЧрдгрдирд╛" (рдПрдХ рдмрд╛рд░ рдПрдХреНрд╕ рдФрд░ рд╡рд╛рдИ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдФрд░ рдШрдЯрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рддреАрди рдмрд╛рд░, рдПрдХ рдмрд╛рд░ рдФрд░ рдмреА рдХреЛ рдПрдХ рд╕рд╛рде рджреЛ рдмрд╛рд░ рдЬреЛрдбрд╝рдирд╛) рд╕реЗ рдореБрдХреНрдд рд╣реИред рдЕрдм рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рдЕрдиреБрдХреВрд▓рди рдПрдХ рдмрдбрд╝реЗ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реАрдкреАрдпреВ рд╕рдордп рдХреЛ рдХрд┐рддрдирд╛ рдмрдЪрд╛рддрд╛ рд╣реИред
рдкреБрдирд╢реНрдЪ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдЖрд░реЗрдЦ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдорд╛рдл рдХрд░рдирд╛, рдореЗрд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рджреЛ рдбреНрд░рд╛ рдереЗред
PPS рдореБрдЭреЗ рдЖрд░реЗрдЦ рдФрд░ рд░реЗрдЦрд╛рдВрдХрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ CONVENIENT рд╕реЗрд╡рд╛ рдмрддрд╛рдПрдВред
PPPS рдЬрд╛рд░реА рд░рдЦрд╛ рдЬрд╛рдП?