
2018 рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ, рдХреНрд░реЛрдорд┐рдпрдо рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рдЫрдареЗ рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣рдорд╛рд░реЗ рдмреНрд▓реЙрдЧ рдкрд░ рд▓реЗрдЦреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рджрд┐рдЦрд╛рдИ рджреАред рдЪрдХреНрд░ рдореЗрдВ рдЙрдирдХреА рд░реЛрдХрдерд╛рдо рдХреЗ рд▓рд┐рдП рддреНрд░реБрдЯрд┐рдпреЛрдВ рдФрд░ рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд 8 рд▓реЗрдЦ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рджреЛ рд▓реЗрдЦреЛрдВ рдиреЗ рдЧрд░реНрдордЬреЛрд╢реА рд╕реЗ рдЪрд░реНрдЪрд╛ рдХреА рд╣реИ, рдФрд░ рдЕрдм рддрдХ рдореБрдЭреЗ рдЙрдирдореЗрдВ рд╕рдВрдмреЛрдзрд┐рдд рд╡рд┐рд╖рдпреЛрдВ рдкрд░ рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЯрд┐рдкреНрдкрдгреА рдорд┐рд▓реА рд╣реЛред рд╢рд╛рдпрдж, рдХреБрдЫ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рджрд┐рдП рдЬрд╛рдиреЗ рдЪрд╛рд╣рд┐рдП рдФрд░, рдЬреИрд╕рд╛ рдХрд┐ рд╡реЗ рдХрд╣рддреЗ рд╣реИрдВ, i рдХреЛ рдбреЙрдЯ рдХрд░реЗрдВред
рдХреНрд░реЛрдорд┐рдпрдо рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЗ рдЕрдЧрд▓реЗ рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд▓реЗрдЦреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рд▓реЗрдЦрди рдореЗрдВ рдПрдХ рд╡рд░реНрд╖ рдмреАрдд рдЪреБрдХрд╛ рд╣реИ:
- рдХреНрд░реЛрдорд┐рдпрдо: рдЫрдареА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдЬрд╛рдВрдЪ рдФрд░ 250 рдмрдЧ
- рд╕реБрдВрджрд░ рдХреНрд░реЛрдорд┐рдпрдо рдФрд░ рдЕрдирд╛рдбрд╝реА рдпрд╛рдж
- рдЯреВрдЯрдирд╛ рдФрд░ рдЧрд┐рд░рдирд╛
- рдХреНрд░реЛрдорд┐рдпрдо: рдореЗрдореЛрд░реА рд▓реАрдХ
- рдХреНрд░реЛрдорд┐рдпрдо рдЯрд╛рдЗрдкреЛ
- рдХреНрд░реЛрдорд┐рдпрдо: рдЧрд▓рдд рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
- рдпрд╣ рдЬрд╛рдирдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдореЙрд▓реЛрдХ рдлрд╝рдВрдХреНрд╢рди рдХреНрдпрд╛ рд▓реМрдЯрд╛
- рдХреНрд░реЛрдорд┐рдпрдо: рдЕрдиреНрдп рддреНрд░реБрдЯрд┐рдпрд╛рдВ
рдореЗрдорд╕реЗрдЯ рдФрд░
рдорд▓реНрд▓реЛрдХ рдкрд░
рд▓реЗрдЦреЛрдВ рдХрд╛ рдХрд╛рд░рдг рдмрдирд╛ рд╣реИ, рдФрд░ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рдЪрд░реНрдЪрд╛ рдЬреЛ рдореБрдЭреЗ рдЕрдЬреАрдм рд▓рдЧрддреА рд╣реИред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХреБрдЫ рдЧрд▓рддрдлрд╣рдореА рдереА рдХрд┐ рдореИрдВрдиреЗ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рддреИрдпрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдореИрдВрдиреЗ рдЗрди рд▓реЗрдЦреЛрдВ рдкрд░ рд▓реМрдЯрдиреЗ рдФрд░ рдХреБрдЫ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред
memset
рдЪрд▓рд┐рдП рд╢реБрд░реБрдЖрдд рдХрд░рддреЗ рд╣реИрдВ рд▓реЗрдЦ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИред рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рд╡рд╛рдж рдерд╛ред рдХрд╛рдлреА рд╕рд╛рд░реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реНрд╕ рдиреЗ рд▓рд┐рдЦрд╛ рдХрд┐ рдпрд╣ рд╕рд▓рд╛рд╣ рд╣реИ рдХрд┐ рди рд▓рд┐рдЦрдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрдВ:
HDHITTESTINFO hhti = {};
рдФрд░ рдЗрд╕рд▓рд┐рдП:
HDHITTESTINFO hhti = { 0 };
рддрд░реНрдХ:
- {} рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХреЛрдб рдкрдврд╝рддреЗ рд╕рдордп {0} рдирд┐рд░реНрдорд╛рдг рдЖрд╕рд╛рди рд╣реИред
- {}} рдирд┐рд░реНрдорд╛рдг {} рд╕реЗ рдЕрдзрд┐рдХ рд╕рд╣рдЬ рд╣реИред рдпрд╣реА рд╣реИ, 0 рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рд╕рдВрд░рдЪрдирд╛ рд╢реВрдиреНрдп рд╕реЗ рднрд░ рдЧрдИ рд╣реИред
рддрджрдиреБрд╕рд╛рд░, рдореБрдЭреЗ рд▓реЗрдЦ рдореЗрдВ рдЖрд░рдВрднреАрдХрд░рдг рдХреЗ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдкреЗрд╢рдХрд╢ рдХреА рдЧрдИ рд╣реИред рдореИрдВ рддрд░реНрдХреЛрдВ рд╕реЗ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реВрдВ рдФрд░ рд▓реЗрдЦ рдореЗрдВ рд╕рдВрд╢реЛрдзрди рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВред рдЕрдм рдореИрдВ рдЕрдкрдиреА рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕рд╣реА рдард╣рд░рд╛рддрд╛ рд╣реВрдВред
рджреГрд╢реНрдпрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрд╡рд╛рдж рдФрд░ рдЖрджрдд рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдШреБрдВрдШрд░рд╛рд▓реЗ рдмреНрд░реЗрд╕ рдХреЗ рдЕрдВрджрд░ 0 рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ рд╕реНрдерд┐рддрд┐ рдХреЛ рдмрджрд▓ рджреЗрддреА рд╣реИред
рд▓реЗрдХрд┐рди рджреВрд╕рд░реЗ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдореИрдВ рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реВрдВред {0} рдЬреИрд╕рд╛ рд░рд┐рдХреЙрд░реНрдб рдХреЛрдб рдХреЛ рдЧрд▓рдд рд╕рдордЭрдиреЗ рдХрд╛ рдХрд╛рд░рдг рджреЗрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрджрд┐ рдЖрдк 0 рдХреЛ 1 рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рднреА рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЛ рдЗрдХрд╛рдЗрдпреЛрдВ рдореЗрдВ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рд▓реЗрдЦрди рдХреА рдпрд╣ рд╢реИрд▓реА рдЙрдкрдпреЛрдЧреА рд╕реЗ рдЕрдзрд┐рдХ рд╣рд╛рдирд┐рдХрд╛рд░рдХ рд╣реИред
рдкреАрд╡реАрдПрд╕-рд╕реНрдЯреВрдбрд┐рдпреЛ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдХрд╛ рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рд╕рдВрдмрдВрдзрд┐рдд рдирд┐рджрд╛рди
V1009 рднреА рд╣реИ, рдЬрд┐рд╕рдХрд╛ рд╡рд┐рд╡рд░рдг рдЕрдм рдореИрдВ рджреВрдВрдЧрд╛ред
V1009ред рд╕рд░рдгреА рдЖрд░рдВрднреАрдХрд░рдг рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВред рдХреЗрд╡рд▓ рдкрд╣рд▓рд╛ рддрддреНрд╡ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЖрд░рдВрднрд┐рдХ рд╣реИредрд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдиреЗ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рддреНрд░реБрдЯрд┐ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ рдХрд┐ рдПрдХ рд╕рд░рдгреА рдХреА рдШреЛрд╖рдгрд╛ рдХрд░рддреЗ рд╕рдордп, рдореВрд▓реНрдп рдХреЗрд╡рд▓ рдПрдХ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╢реЗрд╖ рддрддреНрд╡реЛрдВ рдХреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд░реВрдк рд╕реЗ рд╢реВрдиреНрдп рдпрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрд░рдВрдн рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
рд╕рдВрджрд┐рдЧреНрдз рдХреЛрдб рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
int arr[3] = {1};
рд╢рд╛рдпрдж рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдПрдХ рдЗрдХрд╛рдЗрдпреЛрдВ рд╕реЗ рдорд┐рд▓рдХрд░
рдЧрд┐рд░рдлреНрддрд╛рд░ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдереА, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред рд╕рд░рдгреА рдореЗрдВ рдорд╛рди 1, 0, 0 рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗред
рд╕рд╣реА рдХреЛрдб рд╣реИ:
int arr[3] = {1, 1, 1};
рдЗрд╕ рддрд░рд╣ рдХреА рдЙрд▓рдЭрди
рдЧрд┐рд░рдлреНрддрд╛рд░реА = {0} рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рд╛рде рд╕рдорд╛рдирддрд╛ рдХреЗ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЬреЛ рдкреВрд░реЗ рд╕рд░рдгреА рдХреЛ рд╢реВрдиреНрдп рдореЗрдВ рдмрджрд▓ рджреЗрддреА рд╣реИред
рдпрджрд┐ рдЖрдкрдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╕рдорд╛рди рдбрд┐рдЬрд╝рд╛рдЗрди рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдЗрд╕ рдирд┐рджрд╛рди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдпрд╣ рднреА рдХреЛрдб рдХреА рджреГрд╢реНрдпрддрд╛ рдХреА рдЙрдкреЗрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рдирд╣реАрдВ рд╣реИред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд░рдВрдЧ рдорд╛рди рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ:
int White[3] = { 0xff, 0xff, 0xff }; int Black[3] = { 0x00 }; int Green[3] = { 0x00, 0xff };
рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдЖрд░рдВрдн рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд╕рднреА рд░рдВрдЧ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд╕реЗрдЯ рдХрд┐рдП рдЧрдП рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЛрдб рдХреЛ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд▓рд┐рдЦрдирд╛ рдмреЗрд╣рддрд░ рд╣реИ:
int White[3] = { 0xff, 0xff, 0xff }; int Black[3] = { 0x00, 0x00, 0x00 }; int Green[3] = { 0x00, 0xff, 0x00 };
malloc
рдЖрдЧреЗ рдкрдврд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ рдЖрдкрд╕реЗ рд▓реЗрдЦ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рддрд╛рдЬрд╝рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реВрдВ "
рдпрд╣ рдЬрд╛рдирдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдореЙрд▓реЛрдХ рдлрд╝рдВрдХреНрд╢рди рдХреНрдпрд╛ рд▓реМрдЯрд╛ рд╣реИ "ред рдЗрд╕ рд▓реЗрдЦ рдиреЗ рдмрд╣реБрдд рдЪрд░реНрдЪрд╛ рдФрд░ рдЖрд▓реЛрдЪрдирд╛ рдЙрддреНрдкрдиреНрди рдХреА рд╣реИред рдпрд╣рд╛рдБ рдХреБрдЫ рдЪрд░реНрдЪрд╛рдПрдБ рд╣реИрдВ:
reddit.com/r/cpp ,
reddit.com/r/C_Programming ,
habr.com ред рдХрднреА-рдХрднреА рд╡реЗ рдореБрдЭреЗ рдореЗрд▓ рдореЗрдВ рдЕрдм рдЗрд╕ рд▓реЗрдЦ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рд┐рдЦрддреЗ рд╣реИрдВред
рд▓реЗрдЦ рдХреА рдЖрд▓реЛрдЪрдирд╛ рдкрд╛рдардХреЛрдВ рдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдмрд┐рдВрджреБрдУрдВ рдкрд░ рдХреА рд╣реИ:
1. рдпрджрд┐ рдореЙрд▓реЙрдХ рдиреЗ рдирд▓ рдХреЛ рд╡рд╛рдкрд╕ рдХрд░ рджрд┐рдпрд╛ , рддреЛ рдпрд╣ рддреБрд░рдВрдд рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИ рдХрд┐ рдЖрдИрдПрдлрдПрд╕ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд▓рд┐рдЦреЗрдВ рдФрд░ рд╕реНрдореГрддрд┐ рдХреА рдХрдореА рдХреЛ рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рд╕рдВрднрд╛рд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ, рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдЕрдХреНрд╕рд░ рдЕрд╕рдВрднрд╡ рд╣реЛрддрд╛ рд╣реИредрдореИрдВрдиреЗ рдореЗрдореЛрд░реА рд╕реЗ рдмрд╛рд╣рд░ рдЪрд▓рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЦрд┐рд░реА рддрдХ рдХреЙрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛, рддреНрд░реБрдЯрд┐ рдХреЛ рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдлреЗрдВрдХ рджрд┐рдпрд╛ред рдпрджрд┐ рдХрд┐рд╕реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рдмрдВрдж рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ, рддреЛ рдРрд╕рд╛ рд╣реА рд╣реЛред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП,
рдореЙрд▓реЙрдХ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдпрд╛
xmalloc (рдЕрдЧрд▓реЗ рдкреИрд░рд╛рдЧреНрд░рд╛рдл рджреЗрдЦреЗрдВ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЗрд╡рд▓ рдПрдХ рдЪреЗрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдореИрдВрдиреЗ рдЖрдкрддреНрддрд┐ рдЬрддрд╛рдИ рдФрд░ рдЪреЗрдХреЛрдВ рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рджреА, рдЬрд┐рд╕рдХреА рд╡рдЬрд╣ рд╕реЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЬрд╛рд░реА рд╣реИ "рдЬреИрд╕реЗ рдХрд┐ рдХреБрдЫ рднреА рдирд╣реАрдВ рд╣реБрдЖ рдерд╛ред" рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рд╣реИред рдпрд╣ рдЦрддрд░рдирд╛рдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░, рдбреЗрдЯрд╛ рднреНрд░рд╖реНрдЯрд╛рдЪрд╛рд░, рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИред
2. рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдирд╣реАрдВ рдХреА рдЧрдИ, рдЬрд┐рд╕рдореЗрдВ рдмрд╛рдж рдХреЗ рд╕рддреНрдпрд╛рдкрди рдХреЗ рд╕рд╛рде рдореЗрдореЛрд░реА рдХреЛ рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреЗ рдпрд╛ рдореМрдЬреВрджрд╛ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рди-рд░реИрдкрд░ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ xwalloc редрдореИрдВ рд╕рд╣рдордд рд╣реВрдВ, рдореИрдВрдиреЗ рдЗрд╕ рдкрд▓ рдХреЛ рдпрд╛рдж рдХрд┐рдпрд╛ред рдПрдХ рд▓реЗрдЦ рд▓рд┐рдЦрддреЗ рд╕рдордп, рдореИрдВрдиреЗ рдЕрднреА рдирд╣реАрдВ рд╕реЛрдЪрд╛ рдерд╛ рдХрд┐ рд╕реНрдерд┐рддрд┐ рдХреЛ рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдПред рдореЗрд░реЗ рд▓рд┐рдП рдкрд╛рдардХ рдХреЛ рдпрд╣ рдмрддрд╛рдирд╛ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдерд╛ рдХрд┐ рд╕рддреНрдпрд╛рдкрди рдХреА рдХрдореА рдХрд╛ рдЦрддрд░рд╛ рдХреНрдпрд╛ рд╣реИред рдЧрд▓рддреА рдХреЛ рдХреИрд╕реЗ рдареАрдХ рдХрд┐рдпрд╛ рдЬрд╛рдП рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрд╡рд╛рдж рдФрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╡рд┐рд╡рд░рдг рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИред
Xmalloc рдлрд╝рдВрдХреНрд╢рди C рдорд╛рдирдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдирд╣реАрдВ рд╣реИ (рджреЗрдЦреЗрдВ "
xmalloc рдФрд░ malloc рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХреНрдпрд╛ рд╣реИ? ")ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЕрдиреНрдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
рдЬреАрдПрдирдпреВ рдмрд░реНрддрдиреЛрдВ рдХреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп (
рдЬреАрдПрдирдпреВ рд▓рд┐рдмреНрд░реАрдЯреА ) рдореЗрдВред
рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рд╕рд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрди рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддрд╛ рд╣реИ:
void* xmalloc(size_t s) { void* p = malloc(s); if (!p) { fprintf (stderr, "fatal: out of memory (xmalloc(%zu)).\n", s); exit(EXIT_FAILURE); } return p; }
рддрджрдиреБрд╕рд╛рд░,
рдореЙрд▓реЙрдХ рдХреЗ рдмрдЬрд╛рдп
рд╣рд░ рдЬрдЧрд╣ xmalloc рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЙрд▓ рдХрд░рдХреЗ
, рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдЕрд╢рдХреНрдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдХрд┐рд╕реА рднреА рдЙрдкрдпреЛрдЧ рдХреЗ рдХрд╛рд░рдг рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ,
xmalloc рднреА рд╕рднреА рдмреАрдорд╛рд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд░рд╛рдордмрд╛рдг рдирд╣реАрдВ рд╣реИред рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛрдб рд▓рд┐рдЦрдиреЗ рдХреА рдмрд╛рдд рдЖрддреЗ рд╣реА
xmalloc рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ред
3. рдЕрдзрд┐рдХрд╛рдВрд╢ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдереАрдВ: "рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдорд▓реНрд▓реЛрдХ рдХрднреА рднреА рдкреВрд░реНрдг рдирд╣реАрдВ рд▓реМрдЯрддрд╛ рд╣реИ ред"рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдореИрдВ рдЕрдХреЗрд▓рд╛ рдирд╣реАрдВ рд╕рдордЭрддрд╛ рдХрд┐ рдпрд╣ рдЧрд▓рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИред рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореЗрд░реЗ рд╕рдорд░реНрдерди рдореЗрдВ рдпрд╣
рдЯрд┐рдкреНрдкрдгреА рдкрд╕рдВрдж рдЖрдИ:
рдРрд╕реЗ рд╡рд┐рд╖рдп рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреЗ рдЕрдиреБрднрд╡ рд╕реЗ, рдХрд┐рд╕реА рдХреЛ рдпрд╣ рдорд╣рд╕реВрд╕ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рджреЛ рд╕рдВрдкреНрд░рджрд╛рдп рд╣реИрдВред рдкрд╣рд▓реЗ рдХреЗ рдЕрдиреБрдпрд╛рдпрд┐рдпреЛрдВ рдХреЛ рджреГрдврд╝ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд, рдореЙрд▓реЙрдХ рдХрднреА рднреА NULL рдирд╣реАрдВ рд▓реМрдЯрд╛рддрд╛ рд╣реИред рджреВрд╕рд░реЗ рдХреЗ рдЕрдиреБрдпрд╛рдпрд┐рдпреЛрдВ рдХреЛ рджреГрдврд╝рддрд╛ рд╕реЗ рдЖрд╢реНрд╡рд╕реНрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрд┐рдд рдирд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдмрд╕ рдЧрд┐рд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЖрдк рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдордирд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдЦрд╛рд╕рддреМрд░ рдкрд░ рддрдм рдЬрдм рдпреЗ рджреЛрдиреЛрдВ рд╕рдВрдкреНрд░рджрд╛рдп рдЖрдкрд╕ рдореЗрдВ рдЯрдХрд░рд╛рддреЗ рд╣реИрдВред рдЖрдк рдЗрд╕реЗ рдХреЗрд╡рд▓ рджреА рдХреЗ рд▓рд┐рдП рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдЪрд░реНрдЪрд╛ рдХрд┐рд╕ рдкреНрд░реЛрдлрд╛рдЗрд▓ рд╕рдВрд╕рд╛рдзрди рдкрд░ рд╣реИредрдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдФрд░ рд╕рд▓рд╛рд╣ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдФрд░ рдореИрдВ рдордирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ :)ред рдЖрдЗрдП рдЖрд╢рд╛ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдпреЗ рд╡рд┐рдХрд╛рд╕ рджрд▓ рдХреЗрд╡рд▓ рдЧреИрд░-рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░реНрдпрдХреНрд░рдо рд▓рд┐рдЦрддреЗ рд╣реИрдВред рдпрджрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рдбреЗрдЯрд╛ рдЧреЗрдо рдореЗрдВ рдмрд┐рдЧрдбрд╝рддрд╛ рд╣реИ рдпрд╛ рдЧреЗрдо рдХреНрд░реИрд╢ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдХреЛрдИ рдмрдбрд╝реА рдмрд╛рдд рдирд╣реАрдВ рд╣реИред
рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдЬреЛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ, рдбреЗрдЯрд╛рдмреЗрд╕реЛрдВ рдЖрджрд┐ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред
рдкреБрд╕реНрддрдХрд╛рд▓рдп рдФрд░ рдЬрд┐рдореНрдореЗрджрд╛рд░ рдХреЛрдб рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЙрд▓
рдпрджрд┐ рдЖрдк рдПрдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдпрд╛ рдЕрдиреНрдп рдЬрд┐рдореНрдореЗрджрд╛рд░ рдХреЛрдб рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрд╢рд╛
рдореЙрд▓реЙрдХ / рд░рд┐рдпрд▓рд▓реЛрдХ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдП рдЧрдП рдкреЙрдЗрдВрдЯрд░ рдХреЗ рдорд╛рди рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ, рдФрд░ рдореЗрдореЛрд░реА рдХреЛрдб рдХреЛ рдмрд╛рд╣рд░ рдЖрд╡рдВрдЯрд┐рдд рдХрд░реЗрдВ рдпрджрд┐ рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрд┐рдд рдирд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред
рдпрджрд┐ рдЖрдк рд╕реНрдореГрддрд┐ рдХреЛ рдЖрд╡рдВрдЯрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рдереЗ, рддреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ, рдЖрдк
рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреЗ рдХрд╛рд░реНрдп рдХреЛ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддреЗред рдЙрд╕реА рдХрд╛рд░рдг рд╕реЗ, рдЖрдк
xmalloc рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рдХрдИ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдмрд╕ рдЙрдиреНрд╣реЗрдВ рд▓реЗрдиреЗ рдФрд░ рджреБрд░реНрдШрдЯрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИред рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдбреЗрдЯрд╛рдмреЗрд╕ рджреВрд╖рд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдХрдИ рдШрдВрдЯреЛрдВ рддрдХ рдЧрд┐рдиреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрдЯрд╛ рдЦреЛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рд╡рдЬрд╣ рд╕реЗ, рдХрд╛рд░реНрдпрдХреНрд░рдо рд╕реЗрд╡рд╛ рдХрдордЬреЛрд░рд┐рдпреЛрдВ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдордЬреЛрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬрдм рдХрд┐рд╕реА рддрд░рд╣ рд╕реЗ рдмрдврд╝рддреЗ рд▓реЛрдб рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдорд▓реНрдЯреАрдереНрд░реЗрдбреЗрдб рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрд╕ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣ рдирд╣реАрдВ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдФрд░ рдХрд┐рди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЖрд╡реЗрджрди рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдФрд░
рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рд╕реЗ рдЙрд╕реЗ рд╕рд┐рд░реНрдл "рдорд╛рд░рдирд╛" рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИред рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд╕реНрдореГрддрд┐ рд╕реЗ рдмрд╛рд╣рд░ рдЪрд▓рд╛рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреБрдЫ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рд╕реАрдПрдбреА рдкреНрд░рдгрд╛рд▓реА, рд╕реНрдореГрддрд┐ рдХреЗ рдордЬрдмреВрдд рд╡рд┐рдЦрдВрдбрди рдХреЗ рдХрд╛рд░рдг, рдЕрдЧрд▓реЗ рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдореЗрдореЛрд░реА рдмрдлрд░ рдЖрд╡рдВрдЯрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреА рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдЙрд╕рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рд╣рд╛рдирд┐ рдХреЗ рд╕рд╛рде рдЖрдкрд╛рддрдХрд╛рд▓реАрди рдореЛрдб рдореЗрдВ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдХрд╛ рдПрдХ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред рдПрдХ рдХрд╛рд░реНрдпрдХреНрд░рдо рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдмрдЪрд╛рдиреЗ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рдореЛрдб рдореЗрдВ рдЦреБрдж рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╡ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред
рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ рдЖрдк рдЗрд╕ рддрдереНрдп рдкрд░ рднрд░реЛрд╕рд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐
рдореЙрд▓реЛрдХ рд╣рдореЗрд╢рд╛ рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдХрд┐рд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдФрд░ рдХрд┐рд╕ рддрд░рд╣ рд╕реЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рд╣реЛрдЧрд╛, рдЗрд╕рдХреА рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред рдпрджрд┐ рдПрдХ рдордВрдЪ рдкрд░ рд╕реНрдореГрддрд┐ рдХреА рдХрдореА рд╡рд┐рджреЗрд╢реА рд╣реИ, рддреЛ рджреВрд╕рд░реЗ рдкрд░ рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИред
рдпрд╣ рдЖрд╢рд╛ рдирд╣реАрдВ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ рдХрд┐ рдпрджрд┐
рдореЙрд▓реЙрдХ NULL рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рддрд╛
рд╣реИ , рддреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреНрд░реИрд╢ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдХреБрдЫ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ
рд▓реЗрдЦ рдореЗрдВ рдмрддрд╛рдпрд╛ рд╣реИ, рдПрдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдЧреИрд░-рд╢реВрдиреНрдп рдкрддреЗ рдкрд░ рдбреЗрдЯрд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИред рдирддреАрдЬрддрди, рдХреБрдЫ рдбреЗрдЯрд╛ рджреВрд╖рд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐
рдпрд╛рджрджрд╛рд╢реНрдд рднреА рдЦрддрд░рдирд╛рдХ рд╣реИред рдпрджрд┐ рдбреЗрдЯрд╛ рд░рд┐рд╡рд░реНрд╕ рдСрд░реНрдбрд░ рдореЗрдВ рднрд░рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкрд╣рд▓реЗ рдХреБрдЫ рдбреЗрдЯрд╛ рджреВрд╖рд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣реА рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреНрд░реИрд╢ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рд▓реЗрдХрд┐рди рдЧрд┐рд░рд╛рд╡рдЯ рдмрд╣реБрдд рджреЗрд░ рд╕реЗ рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрджрд┐ рджреВрд╖рд┐рдд рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ
рдореЗрдорд░реНрд╕ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рдордп рд╕рдорд╛рдирд╛рдВрддрд░ рдереНрд░реЗрдбреНрд╕ рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкрд░рд┐рдгрд╛рдо рдШрд╛рддрдХ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдПрдХ рдХреНрд╖рддрд┐рдЧреНрд░рд╕реНрдд рд▓реЗрдирджреЗрди рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ "рдЕрдирд╛рд╡рд╢реНрдпрдХ" рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрджреЗрд╢ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдордп рдореЗрдВ рдХреБрдЫ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ рдкрд╛рдардХ рдХреЛ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдХрд▓реНрдкрдирд╛ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рд╕реНрдореГрддрд┐ рдореЗрдВ рдХрдЪрд░реЗ рдХрд╛ рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдкрд╛рд╕ рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рдПрдХ рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рд╣реИред рдЖрдкрдХреЛ IMMEDIATELY рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдлрд╝рдВрдХреНрд╢рди рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдпрд╣ NULL рд╣реИ, рддреЛ рддреНрд░реБрдЯрд┐ рд╕реНрдерд┐рддрд┐ рд╡рд╛рдкрд╕ рдХрд░реЗрдВред
рд╕рдВрдмрдВрдзрд┐рдд рд▓рд┐рдВрдХ
- OOM рд╣реИрдВрдбрд▓рд┐рдВрдЧ ред
- рдкреВрд░реНрдг рдмрд┐рдВрджреБрдУрдВ рдХреЗ рд╕рд╛рде рдордЬрд╝рд╛: рднрд╛рдЧ 1 , рднрд╛рдЧ 2 ред
- рдкреНрд░рддреНрдпреЗрдХ рд╕реА рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЛ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рд┐рдП: рднрд╛рдЧ 1 , рднрд╛рдЧ 2 , рднрд╛рдЧ 3 ред

рдпрджрд┐ рдЖрдк рдЗрд╕ рд▓реЗрдЦ рдХреЛ рдЕрдВрдЧреНрд░реЗрдЬреА рдмреЛрд▓рдиреЗ рд╡рд╛рд▓реЗ рджрд░реНрд╢рдХреЛрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдХреГрдкрдпрд╛ рдЕрдиреБрд╡рд╛рдж рдХреЗ рд▓рд┐рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ: рдПрдВрдбреНрд░реЗ рдХрд╛рд░рдкреЛрд╡ред
рдЫрдард╛ рдХреНрд░реЛрдорд┐рдпрдо рдЪреЗрдХ, рдЖрдлреНрдЯрд░рд╡рд░реНрдб ред