0:00
Guys, рд╣рдордиреЗ рдХрдИ рддрд░рд╣ рдХреЗ Pointers рджреЗрдЦреЗрдВ C Programming рдХреЗ рдЗрд╕ Course рдореЗя┐╜
0:03
рдФрд░ рдЖрдЬ рдХреЗ рдЗрд╕ рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рд╣рдо рд▓реЛрдЧ рджреЗрдЦреЗрдВрдЧреЗ Dangling Pointer рдХя┐╜
0:06
рдХрд┐ рдпреЗ Dangling Pointer рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ? рд╕рдмрд╕реЗ рдмрд╣рд▓реЗ рдореИрдВ рдЗрд╕ Dangling Pointer рдХреЛ рд╕реНрдЯрд╛рд░реНрдЯ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓я┐╜
0:12
рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рдмрддрд╛рдирд╛ рдЪрд╛рд╣реВрдБрдЧрд╛ Dangling рдХрд╛ рдЕрд░реНрде рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИ? рдЕрдЧрд░ рд╣рдо рд╣рд┐рдВрджреА рдмрд╛рд╢рд╛ рдХреА рдмрд╛рдд рдХрд░реЗрдВ рддреЛ dangling рдХрд┐рд╕ word рдореЗрдВ translate рд╣реЛрдЧя┐╜
0:19
рдЦреЗрд░ рдореИрдВ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ dangling рдХрд╛ рдорддрд▓рдм рдмрддрд╛ рд░рд╣реЛ dangling рдХрд╛ рдорддрд▓рдм рд╣реЛрддрд╛ рд╣реИ hanging рдХреЛрдИ рдЪреАрдЬ рд▓рдЯрдХреА рд╣реБрдИ рд╣реИ рдЕрдЧрд░ рддреЛ рдЙрд╕рдХреЛ dangling рдмреЛрд▓рддреЗ рд╣реИя┐╜
0:26
рдЕрдм рдпреЗ dangling рдХреНрдпреЛрдВ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдЗрд╕ pointer рдХреЛ рдпрд╣ рд╕рдмрд╕реЗ рдкрд╣рд▓рд╛ рд╕рд╡рд╛рд▓ рдЖрдкрдХреЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЖрдирд╛ рдЪрд╛рд╣рд┐я┐╜
0:32
рдЙрд╕рд╕реЗ рдмрд╣рд▓реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ definition рдХреЛ рджреЗрдЦ рд▓реЗрддреЗ рд╣реИрдВ рдХрд┐ dangling pointer рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣я┐╜
0:35
рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣рдо рд▓реЛрдЧ рджреЗрдЦреЗрдВрдЧреЗ рдЗрд╕рдХреЛ dangling рдХреНрдпреЛрдВ рдХрд╣рддреЗ рд╣реИ a pointer pointing to a free memory location
0:41
рдПрдХ рдРрд╕реА memory location рдХреЛ point рдХрд░ рд░рд╣рд╛ рд╣реИ pointer рдЬрд┐рд╕рдХреЛ already free рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣я┐╜
0:47
рдпрд╛ рдлрд┐рд░ рд╡реЛ ╤В╨╛╤В location рдЬрд┐рд╕рдХреЗ content рдХреЛ delete рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдмрд╛рдд рдмрд░рд╛рдмрд░ рд╣я┐╜
0:51
freed memory location рдпрд╛ рдлрд┐рд░ рдПрдХ рдРрд╕реА memory location рдЬрд┐рд╕рдХреЗ content рдХреЛ delete рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣я┐╜
0:57
рддреЛ рдЗрд╕реЗ рдХрд╣рддреЗ рд╣реИрдВ dangling pointer as simple as that dangling pointers arise due to object destruction
1:04
when an object that has an incoming reference is deleted or deallocated
1:08
without modifying the value of the pointer so that the pointer still points
1:12
рдЕрдм рдЗрд╕ рдмрд╛рдд рдХрд╛ рдореИрдВ рдЖрдкрдХреЛ рдорддрд▓рдм рдмрддрд╛рддрд╛ рд╣реВрдБ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ pointer рдея┐╜
1:16
рдареАрдХ рд╣реИ рдпрд╣ рдкреЙрдЗрдВрдЯрд░ рдкреЙрдЗрдВрдЯ рдХрд░рддрд╛ рдерд╛ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдорд╛рди рд▓реЛ рдЗрдВрдЯ рдП рдерд╛ рдореЗрд░рд╛ рдореИрдВрдиреЗ рдмрдирд╛рдпрд╛ рдерд╛ рдпрд╣ рдореЗрд░рд╛ рдП рдСрдмреНрдЬреЗрдХреНрдЯ рд╣реИ рдЗрд╕рдХреЛ рдпрд╣ рдкреЙрдЗрдВрдЯ рдХрд░рддрд╛ рдерд╛ рдореЗрд░рд╛ рдкреА рдЯреА рдЖрд░ рдЕрдм рд╣реБрдЖ рдХреНрдпрд╛ рдЖрдкрдиреЗ рдП рдХреЛ рдХрд░ рджрд┐рдпрд╛ рдбрд┐рд▓реАрдЯ рддреЛ рдпрд╣ рдЬреЛ рдкреА рдЯреА рдЖрд░ рдерд╛ рдпрд╣ рд▓рдЯрдХрд╛ рдХрд╛ рд▓рдЯрдХрд╛ рд░я┐╜
1:46
memory рдХреЛ рдкреАрдЯреАрдЖрд░ рдХрд╛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдкреАрдЯреАрдЖрд░ рддреЛ рдПрдХ рдкреЙрдЗрдВрдЯ рдХрд░ рд░рд╣рд╛ рдерд╛ рддреЛ рдкреАрдЯреАрдЖрд░ рд▓рдЯрдХрд╛ рд░рд╣ рдЧрдпрд╛ рдЗрд╕рд▓рд┐рдП рдЗрд╕рдХреЛ рдХрд╣рддя┐╜
1:53
рд╣реИрдВ рдбреИрдВрдЧрд▓рд┐рдВрдЧ рдкреЙрдЗрдВрдЯрд░ рдПрдХ рдРрд╕рд╛ рдкреЙрдЗрдВрдЯрд░ рдЬреЛ рдПрдХ рдРрд╕реА рд▓реЛрдХреЗрд╢рди рдХреЛ рдкреЙрдЗрдВрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдЕрдм рдирд╣реАрдВ рд░рд╣реА рдЗрд╕ рджреБрдирд┐рдпрд╛ рдореЗя┐╜
2:01
рдЬреЛ рдЕрдм рдирд╣реАрдВ рд░рд╣реА рдПрдХ рд╡реИрд▓рд┐рдб рдореЗрдорд░реА рд▓реЛрдХреЗрд╢рди, рдЙрд╕рдХреЛ рдкреЙрдЗрдВрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ, рд╡реЛ рд╣реИ рдбреИрдВрдЧрд▓рд┐рдВрдЧ рдкреЙрдЗрдВрдЯрд░, рддреЛ рджреЗрдЦрддреЗ рд╣реИрдВ рдбреИрдВрдЧрд▓рд┐рдВрдЧ рдкреЙрдЗрдВрдЯрд░ рдХрд┐рд╕ рддрд░рд╣ рдмрдирддреЗ рд╣реИрдВ, рдбреИрдВрдЧрд▓рд┐рдВрдЧ рдХреА рдореАрдирд┐рдВрдЧ рдореИрдВрдиреЗ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рдмрддрд╛ рджреА, рдЗрдВрдЧреНрд▓рд┐рд╢ рдореЗрдВ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ рдбреИрдВрдЧрд▓рд┐рдВрдЧ рдХрд╛
2:31
memory allocate рдХрд░реА, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдЙрд╕рдХреЛ free рдХрд░ рджрд┐рдпрд╛, рддреЛ рдпрд╣ рд╡рд╛рд▓рд╛ pointer рд▓рдЯрдХрд╛ рд░рд╣ рдЬрд╛рдПрдЧрд╛
2:37
returning local variables in function calls, рдЕрдЧрд░ рдЖрдкрдиреЗ, рдПрдХ function рдХреЗ рдЕрдВрджрд░
2:43
рдХреБрдЫ variable рдмрдирд╛рдпрд╛, рдФрд░ рдЙрд╕рдХрд╛ address return рдХрд░ рджрд┐рдпрд╛, рддрдм рд╡реЛ рдЬреЛ variable рд╣реИ
2:47
рд╡реЛ рдХреНрдпреЛрдВрдХрд┐ local variable рд╣реИ, рд╡реЛ рддреЛ рдЦрддрдо рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдЖрдкрдХреЛ return рдореЗрдВ рдорд┐рд▓реЗрдЧрд╛ рдПрдХ рдРрд╕рд╛ pointer
2:53
рдПрдХ рдРрд╕рд╛ pointer рдорд┐рд▓реЗрдЧрд╛ рдЖрдкрдХреЛ return рдореЗрдВ рдЬреЛ рдХреА рдХрд╣рд╛рдВ point рдХрд░ рд░рд╣рд╛ рд╣я┐╜
2:57
рдЬреЛ рдХреА рд╡рд╣рд╛рдВ point рдХрд░ рд░рд╣рд╛ рд╣реИ рдПрдХ рдРрд╕реА location рдЬреЛ рдХреА рдЕрдм delete рд╣реЛ рдЪреБрдХреА рд╣я┐╜
3:02
рд╡реЛ dangling pointer рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдлрд┐рд░ variable going out of scope рдЗрд╕рдореЗрдВ рдореИрдВ рдЖрдк рд▓реЛрдЧ рдХреЛ рдереЛрдбрд╝рд╛ detail рдореЗрдВ рдмрддрд╛рдКрдВрдЧя┐╜
3:08
рддреЛ рдПрдХ-рдПрдХ cause рдХреЛ рд╣рдо рд▓реЛрдЧ detail рдореЗрдВ рджреЗрдЦреЗрдВрдЧреЗ рдФрд░ рдПрдХ-рдПрдХ cause рдХреЛ detail рдореЗрдВ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж рд╣рдо рд▓реЛрдЧ рд╕рд╣реА рд╕реЗ рд╕рдордЭреЗрдВрдЧя┐╜
3:15
рдХрд┐ рдпреЗ рдЬреЛ cause рд╣реИ рдпреЗ рдХрд┐рд╕ рддрд░рд╣ рд╣рдо рд▓реЛрдЧ dangling pointer рджреЗрдЦрддреЗ рд╣реИрдВ рдЗрди рд╕рдм рдХреА рд╡рдЬрд╝рд╛ рд╕я┐╜
3:22
рдкрд╣рд▓рд╛ рдерд╛ deallocation of memory рдорд╛рди рд▓реЛ рдХрд┐ memory deallocate рд╣реЛ рд░рд╣реА рд╣я┐╜
3:29
рдЕрдЧ pointer рдХреНрдпреЛрдВрдХрд┐ already point рдХрд░ рд░рд╣рд╛ рд╣реИ рдЙрд╕ spread space рдХя┐╜
3:33
рдЗрд╕рд▓рд┐рдП рд╡реЛ рд▓рдЯрдХрд╛ рд░рд╣ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╡реЛ dangling pointer рд╣реЛрдЧрд╛ example рджреЗрдЦрддреЗ рд╣реИя┐╜
3:38
рдпреЗ рдЬреЛ рджреЛ lines рдореИрдВрдиреЗ рд▓рд┐рдЦреА рд╣реИрдВ regular program рдХреА lines рд╣реИя┐╜
3:42
рдорд╛рди рд▓реЛ рдХрд┐ рдХреБрдЫ рдЖрдкрдиреЗ рдХреБрдЫ рднреА variables рдмрдирд╛рдП рдХреБрдЫ рднреА рдХрд╛рдо рдХрд┐рдпя┐╜
3:46
рдЖрдкрдиреЗ рдЕрдкрдиреЗ program рдХреЗ рдЕрдВрджрд░ рдЕрдм рдХреНрдпрд╛ рдХрд┐рдпрд╛ рдЖрдкрдиреЗ рдпрд╣рд╛рдВ рд╕реЗ рдПрдХ ptr рдмрдирд╛рдпя┐╜
3:52
рдПрдХ pointer рдмрдирд╛рдпрд╛, рдЖрдкрдиреЗ рдХрд╣рд╛ integer pointer рдореБрдЭреЗ malloc memory рджреЗ рджреЛ рдЗрддрдия┐╜
3:57
typecast рдХрд░рдХреЗ int star рдореЗрдВ malloc рдореБрдЭреЗ рдЗрддрдиреА memory рджреЗ рджреЛ typecast рдХрд░рдХя┐╜
4:04
int star рдореЗрдВ, malloc рджреЗрд╡рддрд╛ рдмреЛрд▓реЗрдВрдЧреЗ рдареАрдХ рд╣реИ ptr, рдореИрдВ рддреБрдордХреЛ memory allocate рдХрд░рдХреЗ рджреЗрддрд╛ рд╣реВя┐╜
4:10
heap рд╕реЗ, рдпреЗ рд░рд╣реА memory, рдпреЗ рд▓реЛ memory int star рдореЗрдВ рднреА typecast рдХрд░ рд▓реЗрддрд╛ рд╣реВя┐╜
4:16
рдХреНрдпреЛрдВ рдХрд░ рджреЗрддрд╛ рд╣реВрдБ star рдореЗрдВ type cast рдХреНрдпреЛрдВрдХрд┐ malloc return рдХрд░реЗрдЧрд╛ void
4:21
рдПрдХ void pointer рдЕрдм рд╣рдо рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рдХрд┐ int star ptr рдХя┐╜
4:26
void pointer рд╕реЗ point рдХрд░рд╛рдП рд╣рдо type cast рдХрд░рдХреЗ ptr рдХреЛ point рдХрд░рд╛рдирд╛ рд╣я┐╜
4:30
рдЙрд╕ memory block рд╕реЗ рдЕрдм рдпрд╣рд╛рдБ рддрдХ рдПрдХрджрдо clear рд╣реИ ptr рдХреЗ рдЕрдВрджрд░ рдЖ рдЧрдпрд╛ рд╣реИ рдпрд╣ memory block
4:36
рдЬреЛ рдХрд┐ рд╣рдордиреЗ dynamically allocate рдХрд┐рдпрд╛ рдЖрдкрдиреЗ рдХрд┐рдпрд╛ рдХреНрдпрд╛ рдЖрдкрдиреЗ free рдХрд░ рджрд┐рдпрд╛ ptr рдХя┐╜
4:46
рдкреЙрдЗрдВрдЯ рдХрд░рддрд╛ рдерд╛ рдЕрдм PTR рдкрд╣рд▓реЗ рддреЛ рдЦреБрд╢ рдерд╛ PTR рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рдерд╛ PTR рдкреЙрдЗрдВрдЯ рдХрд░рддрд╛ рдерд╛ рдПрдХ memory block рдХреЛ PTR рдЦреБрд╢ memory block рдЦреБрд╢ memory block рдЖрдкрдиреЗ рдЙрдбрд╝рд╛ рджрд┐рдпрд╛ рдЕрдм PTR рдХреНрдпрд╛ рд╣реЛрдЧрд╛ PTR рдЕрдХреЗрд▓рд╛ рд╣реЛ рдЬрд╛рдПрдЧрд╛ PTR рдЕрдм рд▓рдЯрдХрд╛ рд░рд╣ рдЬрд╛рдПрдЧрд╛ PTR рдПрдХ dangling pointer рдмрди рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЬрд╣рд╛рдВ рд╡реЛ рдкреЙрдЗрдВрдЯ я┐╜
5:16
рд╡реЛ рдирдВрдмрд░ рд╡рди рд╡рдЬрд╝рд╛ рдереА рд╣рдорд╛рд░реА, the allocation of memory, рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВ
5:20
рдпрд╣ program рдЖрдк рд▓реЛрдЧреЛрдВ рд╕рдордЭ рдореЗрдВ рдЖ рдЧрдпрд╛ рд╣реЛрдЧрд╛, рдпрд╣рд╛рдБ рдкрд░, рдПрдХ рдЪреАрдЬ рдореИрдВ note рдХрд░рдХреЗ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рдмрддрд╛рддрд╛ рд╣реВрдБ
5:25
рдпрд╣рд╛рдБ рдкрд░ dangling pointer рдмрдирд╛, рдЬрдм рдореИрдВрдиреЗ free ptr рд▓рд┐рдЦрд╛, рд▓реЗрдХрд┐рди, ptr is equal to рдЕрдЧрд░ рдореИрдВрдиреЗ null рдХрд░ рджрд┐рдпрд╛
5:33
рдЕрдм рдпреЗ dangling рдирд╣реАрдВ рд░рд╣рд╛ рдХреНрдпреЛрдВрдХрд┐ рдЕрдм рдпреЗ null рдХреЛ point рдХрд░ рд░рд╣рд╛ рд╣я┐╜
5:37
рдпрд╛рдирд┐ рдХрд┐ рдХрд┐рд╕реА рдЪреАрдЬ рдХреЛ point рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ рддреЛ рдЕрдм рдпреЗ рдпрд╣рд╛рдБ рдкрд░ dangling рдирд╣реАрдВ рд░рд╣я┐╜
5:42
рддреЛ рдпреЗ рдЪреАрдЬ рдЖрдк рд▓реЛрдЧ рдХреЛ рджрд┐рд╣рд╛рди рдореЗрдВ рд░рдЦрдиреА рд╣реИ рдпреЗ semicolon рд╣я┐╜
5:46
рдФрд░ рдпреЗ рдХреБрдЫ colon рдЬреИрд╕рд╛ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕рдХреЛ semicolon рдорд░рд╛ рджрд┐рдпя┐╜
5:49
рдЕрдм рд╣рдо рд▓реЛрдЧ рдпрд╣рд╛рдБ рдкрд░ рджреЗрдЦреЗрдВрдЧреЗ рджреВрд╕рд░реА рд╡рдЬрд╝рд╛ returning local variables in function calls main start flow program int star ptr equate
6:07
function рдХреЛ рдЬреЛ рдХреА рдПрдХ pointer return рдХрд░рддрд╛ рд╣реИ address return рдХрд░рддрд╛ рд╣я┐╜
6:13
рддреЛ int star ptr рдЕрдЧрд░ рдореИрдВ рд▓рд┐рдЦреВрдВ рдХрд┐рд╕реА рднреА program рдореЗрдВ рддреЛ рдЗрд╕рдХрд╛ рдЬреЛ RHS рд╣реЛрддрд╛ рд╣реИ рд╡реЛ рдПрдХ address
6:19
рд╣реЛрддрд╛ рд╣реИ рддреЛ рдпреЗ рдЬреЛ function рд╣реИ рд╡реЛ рдПрдХ address return рдХрд░рддрд╛ рд╣я┐╜
6:24
рддреЛ рдпреЗ рдЬреЛ statement рд╣реИ рд╡реЛ valid рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдЕрдм рдпреЗ рдХрд╛рдо рдореИрдВрдиреЗ рдХрд┐рдпрд╛ рдЬреИрд╕реЗ рд╣я┐╜
6:29
рддрдм рдХреНрдпрд╛ рд╣реЛрдЧрд╛ PTR рдореЗрдВ рдЬреЛ рднреА address рдЖрдПрдЧрд╛ рд╡реЛ рдпрд╣рд╛рдБ рдкрд░ store рд╣реЛ рдЬрд╛рдПрдЧрд╛ PTR рдореЗя┐╜
6:34
рдЬреЛ рднреА function return рдХрд░реЗрдЧрд╛ address рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдореИрдВ PTR рдХреЛ print рдХрд░рд╛ рд░рд╣рд╛ рд╣реВя┐╜
6:38
рд▓реЗрдХрд┐рди рдЬрдм function рдХреЗ рдЕрдВрджрд░ рд╣рдо рдЬрд╛рдПрдВрдЧреЗ рддреЛ рджреЗрдЦреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛, рдЬрдм рд╣рдо function рдХреЗ рдЕрдВрджрд░ рдЬрд╛рдПрдВрдЧреЗ, рдкрд╣рд▓реЗ рддреЛ рдпрд╣рд╛рдБ рдкрд░ main рдХреА stack рдмрдирд╛ рджреЗрддрд╛ рд╣реВрдБ рдореИрдВ
6:50
main рдХрд╛ рдЬреЛ stack frame рд╣реИ, рд╡реЛ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛, рдореИрдВрдиреЗ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ already рд╕рдордЭрд╛рдпрд╛ рд╣реБрдЖ рд╣реИ рдХрд┐
6:55
рдХрд┐рд╕ рддрд░рд╣ text block, рдХрд┐рд╕ рддрд░рд╣ рд╣рдорд╛рд░рд╛ static global variable рдХрд╛ block, рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд╣рдорд╛рд░рд╛ stack
7:03
рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж heap рдпреЗ рдЪрд╛рд░ рдЬреЛ memory рд╣реИрдВ рдпреЗ рдЪрд╛рд░ segments рд╣реИ memory рдХреЗ рдХрд┐рд╕ рддрд░рд╣ рдХрд╛рдо рдХрд░рддреЗ рд╣реИя┐╜
7:09
рд╣рдо рд▓реЛрдЧ рдЕрднреА рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдпрд╣рд╛рдБ рдкрд░ stack рд╡рд╛рд▓реЗ segment рдореЗрдВ zoom рдХрд░ рд░рд╣реЗ рд╣реИя┐╜
7:13
main рдХреЗ stack frame рдХреЛ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ рдпрд╣рд╛рдБ рдкрд░ main рдХреЗ рд╕рд╛рд░реЗ variables рдмрдиреЗрдВрдЧя┐╜
7:17
рдФрд░ рдЬреИрд╕реЗ рд╣реА my fun call рд╣реЛрдЧрд╛ рдпрд╣ рдЬреЛ main рд╣реИ рд╡реЛ pause рд╣реЛ рдЬрд╛рдПрдЧя┐╜
7:21
рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдПрдХ рдирдпрд╛ stack frame рдмрдирд╛рдПрдЧрд╛ my fun рдХрд╛ рдЬрдм my fun рдХрд╛ рдПрдХ stack frame рдмрдиреЗрдЧя┐╜
7:27
рддреЛ рдпрд╣рд╛рдБ рдкрд░ my fun рдХреЗ рд╕рд╛рд░реЗ variables рдмрдиреЗрдЧреЗ a рдмрдиреЗрдЧрд╛ рдФрд░ рдпрд╣рд╛рдБ рдкрд░ auto рдирд╣реАрдВ рдореБрдЭреЗ рдЗрд╕рдХреЛ a рдХрд░рдирд╛ рдея┐╜
7:34
a рдПрдХ local variable рд╣реИ рддреЛ рдпрд╣ auto рдореИрдВ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реВрдБ рдпрд╣рд╛рдБ рд╕я┐╜
7:37
return ampersand a рдХрд┐рдпрд╛ рдореИрдВрдиреЗ рдЬреИрд╕реЗ рд╣реА рдореИрдВ return m% a рдХрд░реВрдБрдЧя┐╜
7:43
рдпрд╛рдирд┐ рдХрд┐ рдЬреИрд╕реЗ рд╣реА рдореИрдВ return рдХрд░реВрдБрдЧрд╛ a рдХрд╛ address рддрдм рдХреНрдпрд╛ рд╣реЛрдЧя┐╜
7:47
рдпреЗ address рддреЛ рдореБрдЭреЗ рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛ return рдХрд░ рджреЗрдЧрд╛ рдпреЗ address main рдХреЛ рд▓реЗрдХрд┐я┐╜
7:53
рд▓реЗрдХрд┐рди рд╣реЛрдЧрд╛ рдХреНрдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпреЗ рдЬреЛ function рд╣реИ рд╡реЛ return рд╣реЛ рдЪреБрдХрд╛ рд╣я┐╜
7:58
рдЗрд╕рдХреЗ рд╕рд╛рд░реЗ local variables destroy рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ рдЕрдЧрд░ рдХреЛрдИ static variable рд╣я┐╜
8:04
obviously рд╡реЛ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдЗрд╕ case рдореЗрдВ рдХреНрдпреЛрдВрдХрд┐ рд╕рд╛рд░реЗ local рд╣реИ, рдЗрд╕рдХреЗ рд╕рд╛рд░реЗ рдХреЗ рд╕рд╛рд░реЗ рдЬреЛ variables рд╣реИрдВ
8:10
рд╡реЛ рдЦрддрдо рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ, рдФрд░ рдХреНрдпрд╛ рд╣реЛрдЧрд╛, PTR рдПрдХ dangling pointer рдмрди рдЬрд╛рдПрдЧрд╛
8:15
рддреЛ рдпрд╣рд╛рдБ рдкрд░ PTR рдПрдХ dangling pointer рдмрди рдЬрд╛рдПрдЧрд╛, рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВрдБ рдпрд╣рд╛рдБ рдкрд░
8:20
dangling pointer, рддреЛ рдпрд╣ рдПрдХ рджреВрд╕рд░рд╛ рддрд░реАрдХрд╛ рд╣реЛ рдЧрдпрд╛, pointer рдХреА dangling рдмрдирдиреЗ рдХрд╛
8:27
рдЗрд╕ рдЪреАрдЬрд╝ рдХреЛ рдореИрдВ рдЖрдк рд▓реЛрдЧ рдХреЛ рдПрдХ рдмрд░ рдФрд░ рд╕рдордЭрд╛рддрд╛ рд╣реВрдБ, рд╣рдордиреЗ рдХрд┐рдпрд╛ рдХреНрдпрд╛, main рд╕реЗ рдПрдХ int star ptr pointer variable рдмрдирд╛рдпрд╛
8:33
рдПрдХ рдРрд╕реЗ function рдХреЛ equate рдХрд┐рдпрд╛, рд╣рдордиреЗ рдХрд╣рд╛, рдХрд┐ ptr рдХреЛ assign рдХрд░ рджреЛ рдПрдХ рдРрд╕реА value
8:38
рдЬреЛ рдХрд┐ myfunk return рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рдПрдХ address рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЛ рдЬреЛ int star address рд╣реИ рдЬреЛ рдХя┐╜
8:43
рд╡реЛ рдХреНрдпрд╛ рд╣реИ myfunk рдЕрдкрдиреЗ local variable рдХрд╛ address return рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдХреА рдЦрддрдо рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд╣я┐╜
8:47
рддреЛ рдЬрдм рдпреЗ return рд╣реЛ рдЬрд╛рдПрдЧрд╛ рддреЛ рдпреЗ a рддреЛ variable рдЦрддрдо рд╣реЛ рдЬрд╛рдПрдЧрд╛ рддреЛ a рдХреЛ point рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдо рдирд╣реАрдВ рдмрдирддрд╛ рд╣я┐╜
8:53
a рдХреЛ рдЕрдЧрд░ рд╡реЛ point рднреА рдХрд░ рд░рд╣рд╛ рд╣реИ рддреЛ system рдХреЗ рджрд┐рдорд╛рдЧ рдореЗя┐╜
8:58
system рдХреА understanding рдХреЗ рд╣рд┐рд╕рд╛рдм рд╕реЗ рд╡реЛ рдПрдХ free memory block рд╣реИ рдЗрд╕рд▓рд┐рдП PTR рдПрдХ рд▓рдЯрдХрд╛ рд╣реБрдЖ pointer рд╣я┐╜
9:04
рдПрдХ dangling pointer рд╣реИ рдпреЗ рджреВрд╕рд░рд╛ рддрд░реАрдХрд╛ рд╣реЛ рдЧрдпрд╛ рд╣рдорд╛рд░рд╛ рдХрд┐рд╕реА рднреА pointer рдХреЗ dangling рдмрдирдиреЗ рдХя┐╜
9:10
рддреАрд╕рд░реЗ рддрд░реАрдХреЗ рдХреА рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдБрдЧрд╛ рдпрд╣рд╛рдБ рдкрд░ main рдореИрдВрдиреЗ рдмрдирд╛рдпрд╛ рд╣я┐╜
9:15
рдПрдХ function рдмрдирд╛рдпрд╛ рд╣реИ рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдореИрдВрдиреЗ рдПрдХ pointer variable рдмрдирд╛рдпрд╛ рд╣я┐╜
9:18
рдореИрдВрдиреЗ рд▓рд┐рдЦрд╛ рд╣реИ int star PTR рдЖрддреЗ рд╣реИрдВ рддреЛ рдПрдХ scope start рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЬреИрд╕реЗ рд╣реА рдпреЗ curly brace рдЦрддрдо рд╣реЛрдЧрд╛ рддреЛ рдпрд╣рд╛рдБ рдкрд░ рдореИрдВ рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВрдБ scope ends рддреЛ рдпрд╣рд╛рдБ рдкрд░ scope start рд╣реБрдЖ рдФрд░ рдпрд╣рд╛рдБ рдкрд░ end рд╣реЛ рдЧрдпрд╛ рддреЛ рдпрд╣рд╛рдБ рдкрд░ рдореИрдВ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдмрдирд╛ рджреЗрддрд╛ рд╣реВрдБ рдПрдХ рдмрд╛рд░ scope start рд╣реЛрдЧрд╛ рддреЛ рдпреЗ рд╕рд╛рд░реЗ variables рдЖ рдЬрд╛рдПрдВрдЧреЗ рдЬреИрд╕реЗ рд╣реА scope end рд╣реЛрдЧрд╛ рдпреЗ рд╕рд╛рд░реЗ variables destroy рд╣реЛ рдЬрд╛рдПрдВя┐╜
10:00
рдРрд╕реЗ рд╣реА рдпреЗ scope рдЦрддрдо рд╣реЛрдЧрд╛, рдпрд╛рдирд┐ рдХрд┐ рдпреЗ curly braces рд╕реЗ рдмрд╛рд╣рд░ рдЖрдПрдЧрд╛ рдпреЗ
10:05
рдЬреЛ i рд╣реИ рдореЗрд░рд╛, рд╡реЛ destroy рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдмрд┐рд▓реНрдХреБрд▓ рдЗрд╕реА рддрд░рд╣ рдЬрд┐рд╕ рддрд░рд╣ рд╣рдорд╛рд░рд╛ рдЬреЛ local variable рд╣реЛрддрд╛ рд╣реИ
10:11
function рдХрд╛, рдЬрд┐рд╕ рддрд░рд╣ рд╣рдорд╛рд░реЗ function рдХрд╛ stack frame рд╣реЛрддрд╛ рд╣реИ, рд╡реЛ рдкреВрд░рд╛ рдХрд╛ рдкреВрд░рд╛ рдЦрд╛рд▓реА рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ
10:17
рд╕рд╛рд░реЗ рдХреЗ рд╕рд╛рд░реЗ рдЬреЛ variables рд╣реИрдВ, рд▓реЛрдХрд▓ рд╡реЛ destroy рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ рдФрд░ function return рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдЙрд╕реА рддрд░рд╣ рдПрдХ scope start рд╣реЛрдиреЗ рдХреЗ рдмрд╛я┐╜
10:24
рдЬрдм end рд╣реЛрддрд╛ рд╣реИ рддреЛ рдЙрд╕рдХреЗ рдЕрдВрджрд░ initialize рдФрд░ declare рдХрд┐рдпреЗ рд╣реБрдП variables рдЦрддрдо рд╣реЛ рдЬрд╛рддреЗ рд╣реИя┐╜
10:30
рддреЛ рдпрд╣рд╛рдБ рдкрд░ рдореИрдВрдиреЗ рдХреНрдпрд╛ int i is equal to 0 рдпрд╣рд╛рдБ рдкрд░ рдореИрдВрдиреЗ рдЗрд╕рдХреЛ i variable рдХреЛ declare рдХрд┐рдпрд╛ рд╣я┐╜
10:38
define рднреА рдХрд┐рдпрд╛ рд╣реИ declare рднреА рдХрд┐рдпрд╛ рд╣реИ int i is equal to 0 рд▓рд┐рдЦрдХя┐╜
10:43
рдЙрд╕реА рдХреЗ рд╕рд╛рде рд╕рд╛рде рдЬреЛ ptr variable рдореИрдВрдиреЗ рдЙрдкрд░ рдмрдирд╛рдпрд╛ рдерд╛ рдореИрдВрдиреЗ ptr is equal to
10:48
ampersand i рд▓рд┐рдЦрд╛ рд╣реИ рдпрд╛рдирд┐ рдХрд┐ рдореИрдВрдиреЗ рдмреЛрд▓рд╛ рд╣реИ рдХрд┐ рдЬреЛ pointer рд╣я┐╜
10:52
рд╡реЛ point рдХрд░реЗрдЧрд╛ i рдХреЗ address рдХреЛ рдпрд╛рдирд┐ рдХрд┐ i рдХреЛ point рдХрд░реЗрдЧя┐╜
10:56
pointer рдХреЗ рдЕрдВрджрд░ store рд╣реЛрдЧрд╛ i рдХрд╛ address рдпрд╛ рдкреЙрдЗрдВрдЯрд░ point рдХрд░реЗрдЧрд╛ i рдХя┐╜
11:00
рдПрдХреА рдмрд╛рдд рд╣реИ рдЬреИрд╕реЗ scope рдЦрддрдо рд╣реЛрдЧрд╛ рд╣реЛрдЧрд╛ рдХреНрдпрд╛ рдХрд┐ рдпреЗ destroy рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдореЗрд░рд╛ i рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЛ рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдмрдирд╛рдпрд╛ рдея┐╜
11:07
рдФрд░ ptr рдПрдХ dangling pointer рдмрди рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ ptr рддреЛ рдЦрддрдо рд╣реЛрдЧрд╛ рдирд╣реАрдВ рдХреНрдпреЛрдВрдХрд┐ рдЙрд╕рдХреЛ рдореИрдВрдиреЗ main рдХреЗ рдЕрдВрджрд░ рдмрдирд╛рдпрд╛ рд╣я┐╜
11:13
рд╕реНрдХреЛрдк рдХреЗ рдмрд╛рд╣рд░ рдЙрд╕рдХреЛ рдореИрдВрдиреЗ declare рдХрд┐рдпрд╛ рд╣реИ рддреЛ рд╣реЛрдЧрд╛ рдХреНрдпрд╛ рдХрд┐ рдпя┐╜
11:18
рдЬрд┐рдиреНрджрд╛ рд░рд╣реЗрдЧрд╛ рдЖрдИ рдЦрддрдо рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдФрд░ PTR рдХреНрдпрд╛ рд╣реЛрдЧрд╛ PTR рдПрдХ dangling pointer рдмрди рдЬрд╛рдПрдЧя┐╜
11:25
рдПрдХ рдРрд╕реА location рдХреЛ point рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдХрд┐ рдЖрдк free рд╣реЛ рдЪреБрдХреА рд╣реИ рддреЛ PTR рд╣рдорд╛рд░рд╛ рдПрдХ dangling pointer рдмрди рдЪреБрдХрд╛ рд╣я┐╜
11:31
рддреЛ variable going out of scope рдПрдХ рддреАрд╕рд░рд╛ рддрд░реАрдХрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдПрдХ рд╣рдорд╛рд░рд╛ рдЬреЛ PTR variable рд╣реИ рд╡реЛ dangling рдмрди рд╕рдХрддрд╛ рд╣я┐╜
11:38
рддреЛ рдпрд╣ рд╣реИ рд╣рдорд╛рд░рд╛ dangling pointer рддреАрди рддрд░реАрдХреЗ dangling pointer рдмрдирдиреЗ рдХя┐╜
11:42
рдЕрдм рд╣рдо рдпрд╣рд╛рдБ рдкрд░ рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ dangling pointer рдПрдХ рдЕрдЪреНрдЫреА рдЪреАрдЬрд╝ рд╣реИ рд╣рдо рд▓реЛрдЧ рдЗрддрдирд╛ attention рдХреНрдпреЛрдВ рджреЗ рд░рд╣реЗ рд╣реИрдВ dangling pointer рдХя┐╜
11:48
рдХреНрдпрд╛ dangling pointer рдмрдирд╛рдиреЗ рднреА рдкрдбрд╝реЗрдВрдЧреЗ рдХрднреА рд╣рдордХреЛ рдЬрд╝реНрдпрд╛ рдЯреИрдВрдЧрд▓рд┐рдВрдЧ рдмреЙрдЗрдВрдЯрд░ C рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдпреВрдЬрд╝ рд╣реЛрддреЗ рд╣реИя┐╜
11:53
рддреЛ рдореИрдВ рдЖрдкрдХреЛ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ can introduce nasty bugs in our C programs C programs bugs introduce introduce bugs
12:07
рдпреЗ рдПрдХрджрдо clear рд╣реИ, рджреЗрдЦреЛ рд╣реЛрдЧрд╛ рдХреНрдпрд╛ рдХрд┐ рдЕрдЧрд░ рдХреЛрдИ рднреА pointer рдПрдХ рдРрд╕я┐╜
12:11
memory location рдХреЛ point рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдХреА free рд╣реЛ рдЪреБрдХреА рд╣я┐╜
12:15
рддрдм рдХреНрдпрд╛ рд╣реЛрдЧрд╛, рдпреЗ рдЬреЛ pointer рд╣реИ рдЕрдЧрд░ рдпрд╣рд╛рдБ рдкрд░ рдХреБрдЫ рдФрд░ рдЖрддрд╛ рд╣я┐╜
12:20
рдФрд░ рдЙрд╕рдХреЛ de-reference рдХрд░ рджреЗрддреЗ рд╣реИрдВ рдЖрдк рдЧрд▓рддреА рд╕реЗ рддреЛ рдПрдХ bug рдЖ рд╕рдХрддрд╛ рд╣реИ рдЖрдкрдХреЗ program рдореЗя┐╜
12:26
рдЗрд╕рд▓рд┐рдП рд╣рдореЗрд╢рд╛ рдЖрдкрдХреЛ рдХрд░рдирд╛ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдП рдЗрди bugs рдФрд░ security holes рд╕я┐╜
12:30
рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ null рдХреЗ рдмрд░рд╛рдмрд░ рдХрд░ рджреЗрдирд╛ рд╣реИ pointer рдЬреИрд╕реЗ рдЖрдк рдмрдирд╛ рд░рд╣реЗ рд╣реИя┐╜
12:36
рдФрд░ рдЕрдЧрд░ рдЖрдк рд▓реЛрдЧ free рдХрд░рддреЗ рд╣реИрдВ memory рдХреЛ, рддреЛ рдЖрдк рдЙрд╕ pointer рдХреЛ null pointer рдмрдирд╛ рджреЗрдВ
12:42
рддреЛ рдореИрдВрдиреЗ рддрдм рд╣реА рд▓рд┐рдЦрд╛ рд╣реИ, рдпрд╣ рдкрд░ we can avoid issues, caused by dangling pointers
12:46
by initializing pointer to null, after deallocating memory, pointer will no longer be dangling
12:53
рдЕрдЧрд░ рдЖрдкрдиреЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ null рдХрд░ рджрд┐рдпрд╛, initialize, рддрдм рдХреНрдпрд╛ рд╣реЛрдЧрд╛
12:59
рддрдм рдЖрдкрдХрд╛ deallocation рдХреЗ рдмрд╛рдж pointer dangling рдирд╣реАрдВ рд░рд╣реЗрдЧрд╛, рдХрдм рдирд╣реАрдВ рд░рд╣реЗрдЧрд╛ рдЬрдм рдЖрдкрдиреЗ рдЙрд╕рдХреЛ explicitly null рдмрдирд╛рдпрд╛ рд╣я┐╜
13:06
рдпреЗ рджреЛрдиреЛ points рдЬреЛ рд╣реИрдВ, рдЗрдХ рд▓рдмреНрдб рд╣реИ assigning null value means pointer is a null pointer now
13:12
рдЕрдЧрд░ рдЖрдкрдиреЗ ptr is equal to null рд▓рд┐рдЦ рджрд┐рдпрд╛ рддреЛ рдЖрдкрдХрд╛ рдХрд╛рдо рд╣реЛ рдЧрдпя┐╜
13:17
рдЖрдкрдХрд╛ рдЬреЛ dangling pointer рдерд╛, рд▓рдЯрдХрд╛ рд╣реБрдЖ pointer рдерд╛ рд╡реЛ рдЕрдм рдПрдХ null pointer рдмрди рдЧрдпя┐╜
13:22
рдЬреЛ рдХрд┐ рдПрдХ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИ рдЖрдк рдХрд┐рд╕реА рдРрд╕реА memory location рдХреЛ point рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧя┐╜
13:27
рдЬреЛ рдХрд┐ free рд╣реЛ рдЪреБрдХреА рд╣реИ рддреЛ рдПрдХ рдРрд╕реА memory location рдХреЛ рдЖрдк point рдирд╣реАрдВ рдХрд░реЗрдВрдЧя┐╜
13:33
рддреЛ рдЕрдм рд╣рдо рд▓реЛрдЧ рдпрд╣рд╛рдБ рдкрд░ рдПрдХ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ рд╣рдо рдиреЗ рджреЗрдЦрд╛ dangling pointer рдХя┐╜
13:37
рдпрд╣ рднреА рджреЗрдЦрд╛ рдХрд┐ рдПрдХ рдЕрдЪреНрдЫреА рдЪреАрдЬ рдирд╣реАрдВ рд╣реИ рддреАрди рддрд░реАрдХреЗ рджреЗрдЦреЗрдВ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ dangling pointers рдмрди рд╕рдХрддреЗ рд╣реИя┐╜
13:53
рдЕрд▓реНрд░рд╛рдЗрдЯ рдЧрд╛рдЗрд╕, рддреЛ рдореИрдВ рдЖ рдЪреБрдХрд╛ рд╣реВрдБ рдЕрдкрдиреЗ Visual Studio Code рдХреЗ рдЕрдВрджрд░, рдФрд░ рдпрд╣рд╛рдБ рдкрд░ рд╣рдо рд▓реЛрдЧ discuss рдХрд░реЗрдВрдЧреЗ
13:58
dangling pointers рдХреЛ, рд╣рдо рд▓реЛрдЧ рд╡реЛ code рд▓рд┐рдЦреЗрдВрдЧреЗ, рдЬреЛ рдХреА рд╣рдо рд▓реЛрдЧ рдиреЗ discuss рдХрд┐рдпрд╛ recently
14:04
рд╣рдо code рдореЗрдВ рдЙрд╕рдХреЛ рд╕рдордЭреЗрдВрдЧреЗ, рддреЛ рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рдПрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдБ, рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рдПрдХ рдлрд╛рдЗрд▓ рдмрдирд╛ рд▓реЗрддрд╛ рд╣реВрдБ рдЙрд╕рдХрд╛ рдирд╛рдо рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рд░рдЦреВрдВрдЧрд╛ Tutorial 54.C
14:13
рддреЛ Tutorial 54.C рдХреЗ рдирд╛рдо рд╕реЗ рдореИрдВрдиреЗ рдПрдХ Tutorial рдпрд╣рд╛рдБ рдкрд░ рдмрдирд╛ рд▓рд┐рдпрд╛ рд╣реИ рдФрд░ рдпрд╣рд╛рдБ рдкрд░ рдЕрдм рд╣рдо рд▓реЛрдЧ рдЕрдкрдирд╛ Code рд▓рд┐рдЦреЗрдВрдЧя┐╜
14:20
рдЧреИрд╕ рдЕрдЧрд░ рдЖрдк рд▓реЛрдЧреЛрдВ рдиреЗ рдЗрд╕ playlist рдХреЛ access рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕ channel рдХреЛ рдЕрднреА рддрдХ subscribe рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рддреЛ kindly рдХрд░ рд▓реЗрдВ рддрд╛рдХрд┐ рдпреЗ course рдЖрдкрдХреЗ рдкрд╛рд╕ рд░рд╣реЗ рдФрд░ рдЖрдк рд╢реБрд░реВ рд╕реЗ рдЖрдЦрд┐рд░ рддрдХ рдЗрд╕ course рдХреЛ рджреЗрдЦ рдкрд╛рдПя┐╜
14:29
рд╡рд╛рдкрд╕ рдЖрдУрдВрдЧрд╛ рдЕрдкрдиреЗ code рдореЗрдВ рдФрд░ рдпрд╣рд╛рдБ рдкрд░ рдЕрдм рдореИрдВ рд▓рд┐рдЦреЛрдВрдЧрд╛ main2 рдФрд░ рдЬреИрд╕реЗ рд╣реА рдореИрдВ main2 рдпрд╣рд╛рдБ рдкрд░ рд▓рд┐рдЦреЛрдВрдЧрд╛ рдЖрдк рд▓реЛрдЧ рджреЗрдЦя┐╜
14:36
рдпрд╣ users рдиреЗрдкрд┐рдЯ рдореЗрд░рд╛ рдмрди рдХреЗ рдЖ рдЪреБрдХрд╛ рд╣реИ рдпрд╣рд╛рдБ рдкрд░ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рдореИрдВ stdlib.h include рдХрд░рддрд╛ рд╣реВрдБ stdlib.h рдРрд╕рд╛ рдореИрдВ рдЗрд╕рд▓рд┐рдП рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рдХя┐╜
14:45
рддреЛ рдХрд┐ рдбрд╛рдЗрдиреЗрдорд┐рдХ рдореЗрдореЛрд░реА рд▓реЛрдЧ рдЗрд╢рди рдХрд░рдирд╛ рдкрдбрд╝ рд╕рдХрддрд╛ рд╣реИ рдореИрдВ рд▓реЛрдЧ рд╡рд╣ рдЗрд╕реА рдХреЗ рдЕрдВрджрд░ рдбрд┐рдлрд╛рдЗрдВрдб рд╣реИ рддреЛ рдЕрдм рд╣рдо рд▓реЛя┐╜
14:51
рдХрд░реЗрдВрдЧреЗ рдХреНрдпрд╛ рдпрд╣рд╛рдВ рдкрд░ рджреЗрдЦреЗрдВрдЧреЗ рдбреИрдВрдЧрд▓рд┐рдВрдЧ рдкреЙрдЗрдВрдЯрд░ рдмрдирд╛рдХрд░ рдореИрдВ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрдм рдмрди рд╕рдХрддрд╛ рд╣реИ рдбреИрдВрдЧрд▓рд┐рдВя┐╜
14:57
рдЕрдЧрд░ рдорд╛рди рд▓реЛ рдЖрдкрдиреЗ рдпрд╣рд╛рдБ рдкрд░ рд▓рд┐рдЦрд╛ int star ptr рддреЛ рдЕрдЧрд░ рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВрдБ int star ptr рдФрд░ int star ptr рдХреЗ рдмрд╛рдж рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рд▓рд┐рдЦреВрдБрдЧрд╛ is equal to рдФрд░ рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рд▓рд┐рдЦреВрдБрдЧрд╛ int star рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдореИрдВ malloc рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реВрдБрдЧрд╛ рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рд▓рд┐рдЦреВрдБрдЧрд╛ malloc рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдоя┐╜
15:27
рдпрд╣ рд╕рдмреНрд╕рдХреНрд░рд╛рдЗрдм рдХрд░ рджреЗрддрд╛ рд╣реВрдВ рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВрдВ рдереНрд░реА рдЗрд╕ рдЗрдХрд▓ рдЯреВ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВрдВ рдореИя┐╜
15:40
рдХрдВрдЯреНрд░реЛрд▓ рдбреА рджрдмрд╛рдХрд░ рдпрд╣рд╛рдВ рдкрд░ рдПрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВ рдкреАрдЯреА рдЖрд░ рд╡рди рдкреАрдЯреА рдЖрд░ рдЬреАрд░реЛ рдФрд░ рдпрд╣рд╛рдВ рдкрд░ рдкреАрдЯреА рдЖрд░ рдЯреВ рднреА рд▓рд┐рдЦ рджреЗрддя┐╜
15:47
рдФрд░ рдореИрдВ рдЗрди рд╕рдм рдХреЛ рдХреБрдЫ-рдХреБрдЫ рдирдВрдмрд░ рджреЗ рджреЗрддрд╛ рд╣реВрдБ рдпрд╣рд╛рдБ рдкрд░ рдореИрдВрдиреЗ 64 рджреЗ рджрд┐рдпя┐╜
15:51
рдпрд╣рд╛рдБ рдкрд░ рдореИрдВрдиреЗ 36 рджреЗ рджрд┐рдпрд╛ рдФрд░ рдпрд╣рд╛рдБ рдкрд░ рдореИрдВрдиреЗ рдореЗрд░реЗ рд▓рд┐рдП 5 рджреЗ рджрд┐рдпя┐╜
15:55
рдХрдВрдЯреНрд░реЛрд▓ S рд╕реЗрд╡ рдХрд░рдХреЗ рдЬрдм рдЗрд╕рдХреЛ рдореИрдВ рд░рди рдХрд░реВрдБрдЧрд╛ рддрдм рд╣реЛрдЧрд╛ рдХреНрдпя┐╜
15:59
рдХрд┐ PTR 0, 1, 2, 3 рдпрд╛рдирд┐ рдХреА рдпрд╣ рдЬреЛ memory location
16:03
рдореИрдВрдиреЗ dynamically allocate рдХреА рд╣реИ рд╡рд╣рд╛рдБ рдкрд░ рд╕рд╛рд░реЗ рдХреЗ рд╕рд╛рд░реЗ рдЬреЛ variables рд╣я┐╜
16:09
рд╡реЛ рдореИрдВрдиреЗ рдпрд╣рд╛рдБ рдкрд░ initialize рдХрд░ рджрд┐рдпреЗ рд╣реИ рдЕрдм рд╣реЛрдЧрд╛ рдХреНрдпрд╛ рдЕрдЧрд░ рдорд╛рди рд▓реЛ рдореИрдВ рдЗрд╕рдХреЛ free рдХрд░ рджреЗрддрд╛ рд╣реВя┐╜
16:15
рдореИрдВ run рдХрд░ рджреЗрддрд╛ рд╣реВрдБ free ptr рдХреЛ рд╣реЛрдЧрд╛ рдХреНрдпрд╛ рдХрд┐ рдпрд╣ рдЬреЛ ptr рд╣я┐╜
16:22
is now a dangling pointer рдФрд░ рдпрд╣ dangling pointer рдХрд┐рд╕рдХреА рд╡рдЬрд╝рд╛ рд╕реЗ рд╣я┐╜
16:30
рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ case 1 рднреА рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВрдБ рдЬреЛ рдХрд┐ рд╣рдордиреЗ рджреЗрдЦрд╛ рдея┐╜
16:34
case 1 рдХреНрдпрд╛ рдерд╛ deallocation of a memory block рдЕрдЧрд░ рдореИрдВрдиреЗ deallocation рдХрд░ рджрд┐рдпрд╛ memory block рдХя┐╜
16:44
рддрдм рдореЗрд░рд╛ dangling pointer рдмрди рд╕рдХрддрд╛ рд╣реИ рдЗрд╕реА рдХреЗ рд╕рд╛рде рд╕рд╛рде рдЕрдЧрд░ рдореИрдВ case 2 рдХреА рдмрд╛рдд рдХрд░реВical
16:49
рдЬрд╣рд╛рдБ рдкрд░ рд╣реБрдЖ рдХреНрдпрд╛ рдерд╛ рдХрд┐ рдореИрдВ function рдХреЛ call рдХрд░ рд░рд╣рд╛ рдея┐╜
16:53
function returning local variable address рдпреЗ рдерд╛ рдореЗрд░рд╛ рджреВрд╕рд░рд╛ case рдЬрд┐рд╕рдХреА рд╡рдЬрд╝реЗ рд╕я┐╜
17:02
dangling pointer рдмрдирддрд╛ рд╣реИ рддреЛ рдПрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдБ рдЗрд╕рдХреЛ рдореИрдВ рдмрди рдХрд░ рджреЗрддрд╛ рд╣реВрдБ рддрд╛рдХрд┐ рдЖрдк рд▓реЛрдЧ рдЕрдЪреНрдЫреЗ рд╕реЗ рджреЗрдЦреЗя┐╜
17:07
рдЗрд╕рдХреЛ рдереЛрдбрд╝рд╛ рд╕рд╛ zoom рдХрд░рддрд╛ рд╣реВрдБ рдФрд░ рдпрд╣рд╛рдБ рдкрд░ alt рджрдмрд╛ рдХреЗ visual studio code рдХя┐╜
17:11
multi-gazer functionality рдпреЗ рдЙрд╕рдХрд░реВрдБрдЧрд╛ рдФрд░ рдереЛрдбрд╝рд╛-рдереЛрдбрд╝рд╛ visual studio code рднреА рд╕реАрдЦрддреЗ рд░рд╣реЗрдВрдЧреЗ
17:15
рдХреНрдпреЛрдВрдХрд┐ important рд╣реИ, IDE рдЬрдм рддрдХ рдирд╣реАрдВ рдЖрдПрдЧреА рдЪрд▓рд╛рдирд╛, рддрдм рддрдХ рдЕрдЪреНрдЫрд╛ code рдирд╣реАрдВ рд▓рд┐рдЦ рдкрд╛рдПрдВрдЧреЗ
17:21
рдФрд░ рдХрд╛рдлреА рдЬреЛ рдЖрдкрдХреА speed рд╣реЛрддреА рд╣реИ, рд╡реЛ рдЖрдк рдХрд┐рддрдиреА рдЕрдЪреНрдЫреА рддрд░рд╣ рдЕрдкрдиреА IDE рдХреЛ рдпреВрдЬрд╝ рдХрд░рддреЗ рд╣реИрдВ
17:25
рдЙрд╕ рдкрд░ depend рдХрд░рддреА рд╣реИ, anyways case 2 рдореИрдВрдиреЗ рд▓рд┐рдЦрд╛ function returning local variable address
17:30
рдПрдХ function local variable рдХрд╛ address return рдХрд░реЗрдЧрд╛ рдЕрдЧрд░ рддрдм рдпрд╣рд╛рдБ рдкя┐╜
17:36
dangling pointer рдмрди рдЬрд╛рдПрдЧрд╛ рддреЛ рдПрдХ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ рдПрдХ function рдордирд╛рддреЗ рд╣реИя┐╜
17:40
рдпрд╣рд╛рдБ рдкрд░ int рдпрд╣рд╛рдБ рдкрд░ рдореИрдВ рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВрдБ function dangling function dangling рдХрд░рддрд╛ рдХреНрдпрд╛ рд╣реИ рдПрдХ int star
17:48
рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВрдБ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рдПрдХ address return рдХрд░реВрдБрдЧя┐╜
17:53
рдЕрдм рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рд▓рд┐рдЦреВрдБрдЧрд╛ рдХреНрдпрд╛ a is equal to 34 b is equal to 34 364 sum is equal to a plus b
18:12
рдЖрдкрдХреЛ рдорд╛рд▓реЛрдВ рд░рд┐рдЯрд░реНрди рдХрд░ рджреЗрддрд╛ рд╣реВрдВ рдПрдбреНрд░реЗрд╕ рдСрдл рд╕рдо рд▓реЗрдХрд┐рди рд╣реЛрдЧрд╛ рдХреНрдпрд╛ рдЬрдм рдЗрд╕ рдлрдВрдХреНрд╢рди рдХреЛ рдореИрдВ рдХреЙрд▓ рдХрд░реВрдВрдЧрд╛ рддрдм рдЬя┐╜
18:21
address рд╣реЛрдЧрд╛ рдпрд╣рд╛рдБ рдкрд░ рд╕рдо рдХрд╛ рд╡реЛ рддреЛ рдореБрдЭреЗ рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛ рд▓реЗрдХрд┐рди рд╕рдо рдбрд┐рд╕реНрдЯреНрд░реЙрдп рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рд▓реЛрдХрд▓ рд╡реИрд░реАрдмрд▓ рд╣я┐╜
18:28
рддреЛ рдЙрд╕рд╕реЗ рд╣реЛрдЧрд╛ рдХреНрдпрд╛ рдХрд┐ рдЬреЛ рднреА рдкреЙрдЗрдВрдЯрд░ рдкреЙрдЗрдВрдЯ рдХрд░реЗрдЧрд╛ рд╕рдо рдХреЛ рд╡рд╣ рдбреИрдВрдЧрд▓рд┐рдВрдЧ рдмрди рдЬрд╛рдПрдЧрд╛ рддреЛ рдореИрдВ рдЖрдк рд▓реЛрдЧ рдХрд░рдХреЗ рджрд┐рдЦрд╛рддрд╛ рд╣реВрдВ рдЗя┐╜
18:37
рджреЗрдЦреЛ рддреЛ рдореИрдВ рдпрд╣рд╛рдВ рдкрд░ рд▓рд┐рдЦ рджреВрдВ рдХрд┐ рдЗрди рд╕реНрдЯрд╛рд░ рдбрд╛рдВрдЧ рдкреАрдЯреА рдЖрд░ рдпрд╣рд╛рдВ рдкрд░ рдХреИрдорд▓ рдХреЗрд╕ рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВя┐╜
18:46
рдорд╛рд▓реЛ рдореИрдВ рдЗрд╕реА рдХрд▓ рд▓рд┐рдЦрддрд╛ рд╣реВрдВ рдорд╛рдИ рдлрдВрдХ рдореИрдВрдиреЗ рдХреНрдпрд╛ рджрд┐рдпрд╛ рдерд╛ рдирд╛рдо рдЙрд╕рдХрд╛ рдлрдВрдХреНрд╢рди рдиреЗ рд▓рд┐рдЦ рджрд┐рдпрд╛ рдерд╛ рддреЛ рдореИрдВ рдЕрдЧя┐╜
18:53
рдпрд╣рд╛рдБ рдкрд░ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рдПрдХ рдЪреАрдЬ рдФрд░ рд╕рд┐рдЦрд╛рддрд╛ рд╣реВрдБ рдореИрдВ, FDAN рдЕрдЧрд░ рдореИрдВ рд▓рд┐рдЦреВрдБрдЧрд╛, рддреЛ рдпрд╣рд╛рдБ рд╕реЗ FDAN рд▓реЗ рд▓реЗрдЧрд╛
18:59
рдПрдВрдЯрд░ рджрдмрд╛рдЙрдВрдЧрд╛, рдпрд╣ complete рд╣реЛ рдЬрд╛рдПрдЧрд╛, рддреЛ рдЗрд╕ рддрд░рд╣ рдХреА рдЪреАрдЬреЗ рдЖрдк рд╕реАрдЦ рд╕рдХрддреЗ рд╣реИрдВ
19:04
рдФрд░ рдпрд╣рд╛рдБ рдкрд░ int start dang ptr рдкреЙрдЗрдВрдЯ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдПрдХ рдРрд╕реА memory location рдХреЛ
19:23
sum рдХрд╛ scope рдЬреЛ рдерд╛ рд╡реЛ local рдерд╛, sum delete рд╣реЛ рдЬрд╛рдПрдЧрд╛
19:27
рдФрд░ рдЬреЛ рдЙрд╕рдХрд╛ address return рд╣реЛрдЧрд╛ рд╡реЛ рдореИрдВ рдмрд┐рд▓ рдЬрд╛рдПрдЧрд╛, рд╡реЛ рдореИрдВ store рдХрд░ рд░рд╣рд╛ рд╣реВрдБ ptr рдореЗрдВ
19:32
ptr рдПрдХ dangling pointer рдмрди рдЪреБрдХрд╛ рд╣реИ, рддреЛ ptr рдЕрдм рдПрдХ dangling pointer рдмрди рдЪреБрдХрд╛ рд╣реИ
19:37
рддреЛ рдпреЗ рдерд╛ рдореЗрд░рд╛ dang ptr рдПрдХ dangling pointer рдмрди рдЪреБрдХрд╛ рд╣реИ, рддреЛ рдореИрдВ рдЗрд╕рдХреЛ copy рдХрд░рдХреЗ рд▓рд┐рдЦрддрд╛ рд╣реВрдБ
19:41
рдореИрдВ рдЕрдм control рднреА рдХрд░рдХреЗ paste рдХрд░ рджреЗрддрд╛ рд╣реВрдБ рдЗрд╕рдХреЛ insta dang ptr is equal to рдпреЗ ptr is now a dangling pointer
19:50
рддреЛ рдпреЗ рд╣рдорд╛рд░рд╛ case 2 рд╣реЛ рдЧрдпрд╛ рд╣реИ рдЕрдм case 3 рдХреА рдмрд╛рдд рдХрд░рддреЗ рд╣реИя┐╜
19:54
case 3 рдореЗрдВ рдореИрдВрдиреЗ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рдмрддрд╛рдпрд╛ рдерд╛ рдХрд┐ рдЕрдЧрд░ рдПрдХ variable out of scope рдЪрд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ рддя┐╜
19:59
if a variable goes out of scope рдЕрдЧрд░ рдХреБрдЫ рдРрд╕рд╛ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рддрдм рднреА рд╣рдорд╛рд░рд╛ рдЬя┐╜
20:10
рддреЛ рдкреЙрдЗрдВрдЯрд░ рд╣реИ рд╡рд╣ рдбреИрдВрдЧрд▓рд┐рдВрдЧ рд╡рд╛рдВрдЯрд░ рдмрди рдЬрд╛рдПрдЧрд╛ рддреЛ рдореИрдВ рдпрд╣рд╛рдВ рдкрд░ рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВрдВ рдбреИрдВрдЧрд▓рд┐рдВрдЧ рдкреАрдЯреА рдЖрдл рдереА рдЗрди рд╕реНрдЯрд╛рд░ рд▓рд┐рдЦ рджреЗрддя┐╜
20:20
рд╕реЗрдореА рдХреЙрд▓рди рднреА рд▓рдЧрд╛ рджреЗрддрд╛ рд╣реВрдБ, рддреЛ рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рд▓рд┐рдЦрддрд╛ рд╣реВрдБ, int star dangling ptr3, рдФрд░ рдЕрдм рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рд▓рд┐рдЦреВрдБрдЧрд╛
20:30
dangling ptr3, рдФрд░ рдореИрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдБ, рдЗрд╕рдХреЛ scope block рдмрдирд╛ рд▓реЗрддрд╛ рд╣реВрдБ, рдЬреИрд╕реЗ рд╣реА рдореИрдВ scope block рдмрдирд╛рдУрдВрдЧрд╛
20:38
рдФрд░ рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ alt рджрдмрд╛ рдХреЗ up arrow рдХреА рджрдмрд╛рддрд╛ рд╣реВя┐╜
20:42
dangling ptr 3 рдореИрдВрдиреЗ рд▓рд┐рдЦрд╛ рд╣реБрдЖ рдпрд╣рд╛рдБ рдкрд░ рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рдХрд░реВрдБрдЧрд╛ рдХреНрдпя┐╜
20:47
simply рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ рдХреБрдЫ рд▓рд┐рдЦрддрд╛ рд╣реВрдБ int a is equal to 34 рд▓рд┐рдЦя┐╜
20:53
рд╣рдореЗрд╢рд╛ рдореИрдВ 34 рд╣реА рдЪреБрдирддрд╛ рд╣реВрдБ рдЖрдк рд▓реЛрдЧ рдХреЛрдИ рд╢рд┐рдХрд╛рдпрдд рд╣реЛ рд╕рдХрддреА рд╣реИ рдЗрд╕рд▓рд┐рдП рдЗрд╕ рдмрд╛рд░ 12 рдХрд░ рджреЗрддреЗ рд╣реИя┐╜
20:59
a is equal to 12 рдХрд┐рдпрд╛ рдореИрдВрдиреЗ рдЗрд╕ block рдХреЗ рдЕрдВрджрд░ рдпрд╛рдж рд░рдЦрд┐рдпреЗрдЧрд╛ рдХрд┐ рдпреЗ рдЬреЛ scope рд╣реИ рдореЗрд░я┐╜
21:05
рдЗрд╕рдХреЗ рдмрд╛рд╣рд░ рдореИрдВрдиреЗ dangling ptr рдХреЛ рдмрдирд╛рдпрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдпреЗ scope рдЦрддрдо рд╣реЛрдЧя┐╜
21:11
рддреЛ рд╕рд┐рд░реНрдл a рдЦрддрдо рд╣реЛрдЧрд╛ рдЕрдм рдпрд╣рд╛рдБ рдкрд░ рдореИрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ рдХрд┐ a рдореИрдВрдиреЗ рд╡рд╛рдкрд╕ рд╕я┐╜
21:15
рдкрд╣рд▓реЗ рд╕реЗ initialize рддреЛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ good рдореИрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдБ dangling ptr3 is equal to
21:22
address of a рдпрд╛рдирд┐ рдХрд┐ dangling ptr3 рдореЗрдВ рдЖрдк address of a store рдХрд░ рджя┐╜
21:29
dangling ptr3 рдХреЛ point рдХрд░рд╛ рджреЛ рдПрдХ address рд╕реЗ рд▓реЗрдХрд┐рди рд╣реЛрдЧрд╛ рдХреНрдпя┐╜
21:34
рдЕрдм рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдЬреИрд╕реА scope рд╕реЗ рдмрд╛рд╣рд░ рдЖрдПрдЧрд╛ here variable a goes
21:41
out of scope variable a рдпрд╣рд╛рдБ рдкрд░ scope рд╕реЗ рдмрд╛рд╣рд░ рдЬрд╛ рдЪреБрдХрд╛ рд╣я┐╜
21:46
рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╡реЛ delete рд╣реЛ рдЪреБрдХрд╛ рд╣реИ рдЗрд╕рдХрд╛ рдорддрд▓рдм dangling ptr3 which means
21:53
dangling ptr3 is pointing to a location which is freed and hence
22:04
and hence dangling ptr3 is now a рддреЛ рдореИрдВ рдпрд╣рд╛рдБ рдкрд░ correct рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВя┐╜
22:11
Ctrl C рдФрд░ рдпрд╣рд╛рдБ рдкрд░ Ctrl V рдФрд░ рдпрд╣рд╛рдБ рдкрд░ рдореИрдВ рд▓рд┐рдЦ рджреЗрддрд╛ рд╣реВя┐╜
22:17
Dangling PTR 3 is now a dangling pointer рддреЛ рдпрд╣ рдереЗ рд╣рдорд╛рд░реЗ рд╡реЛ 3 cases
22:27
рдЬреЛ рдХрд┐ рдореИрдВрдиреЗ рдЖрдк рд▓реЛрдЧ рдХреЛ рдмрддрд╛рдП рдереЗ dangling pointer рдХрдм рдХрд┐рд╕ рддрд░рд╣ рдХреИрд╕реЗ рдмрдирддрд╛ рд╣я┐╜
22:31
рдЖрд╢рд╛ рдХрд░рддрд╛ рд╣реВрдБ рдЖрдк рд▓реЛрдЧреЛ рд╕рдордЭ рдореЗрдВ рдЖ рдЧрдпрд╛ рд╣реЛрдЧрд╛ рдФрд░ рдпрд╣рд╛рдБ рдкрд░ рдпрд╣ 3 cases
22:35
рдореИрдВ рдЪрд╛рд╣реВрдБрдЧрд╛ рдХрд┐ рдЖрдк рд▓реЛрдЧ рдЪрд▓рд╛ рдХрд░ рджреЗрдЦреЗрдВ рдЦреБрдЫ рд╕реЗ рдХреНрдпреЛрдВрдХрд┐ рдЬрдм рддрдХ рдЖрдк рд▓реЛрдЧ рдЦреБрдЫ рд╕реЗ рдЪрд▓рд╛ рдХрд░ рдирд╣реАрдВ рджреЗрдЦреЗрдВрдЧя┐╜
22:40
рддрдм рддрдХ рдЖрдк рд▓реЛрдЧ рдХреЛ рдЙрдЪреНрдЫреЗ рд╕реЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрдПрдЧрд╛ рдпреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореИрдВ рдЖрдк рд▓реЛрдЧ рдХреЛ рдиреАрдЪреЗ description рдореЗрдВ рджреЗ рджреВрдБрдЧя┐╜
22:45
рддрд╛рдХрд┐ рдЖрдк рд▓реЛрдЧ рдЕрдкрдиреЗ рдЖрдк рдЗрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдЪрд▓рд╛ рдХрд░ modifications рд╡рдЧреИрд░рд╛ рдХрд░ рдкрд╛рдПя┐╜
22:50
рдЖрд╢рд╛ рдХрд░рддрд╛ рд╣реВрдБ рдЖрдк рд▓реЛрдЧ рдХреЛ dangling pointer рд╕рдордЭ рдореЗрдВ рдЖ рдЧрдпрд╛ рд╣реЛрдЧрд╛ рдЕрдЧрд░ рдЖрдк рд▓реЛрдЧ рд╕рдордЭ рдореЗрдВ рдЖ рдЧрдпя┐╜
22:55
рдФрд░ рдЖрдк рд▓реЛрдЧ рдЦреБрд╢ рд╣реИрдВ рддреЛ рдЗрд╕ рд╡реАрдбрд┐рдпреЛ рдХреЛ like рдЬрд░реВрд░ рдХрд░реЗрдВ рдФрд░ рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдиреАрдЪреЗ рдХрдореЗрдВрдб рдореЗрдВ in case рдЕрдЧрд░ рдЖрдкрдХреЛ рдХреЛрдИ рднреА issue рд╣реЛ рд░рд╣рд╛ рд╣реИ рдЗрд╕ code рд╕я┐╜
23:01
рдореИрдВ рдЖрдк рд▓реЛрдЧ рдХреА help рдЬрд░реВрд░ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдБрдЧрд╛ so guys рдореИрдВ рдЖрд╢рд╛ рдХрд░рддрд╛ рд╣реВрдБ рд╕рдм рдХреБрдЫ clear рд╣реЛ рдЧрдпрд╛ рд╣реЛрдЧя┐╜
23:06
рдЕрдЧрд░ рдЖрдк рд▓реЛрдЧреЛрдВ рдиреЗ рднреА рддрдХ facebook, youtube, instagram subscribe рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рднреА рддрдХ рдиреАрдЪреЗ youtube рдореЗрдВ рддреЛ рдЬрд░реВрд░ рдХрд░ рд▓реЗя┐╜
23:11
рдлреЗрд╕рдмреБрдХ рдЗрд╕ рдЯреНрд░реЗрд╡рд░ рдореЗрдВ рдЕрдЧрд░ рдЪреЗрдХ рдЖрдЙрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рддреЛ рдЬрд░реВрд░ рдХрд░реЗрдВ рдЗрд╕ рд╡реАрдбрд┐рдпреЛ рдХреЛ рд▓рд╛рдЗрдХ рдЬрд░реВрд░ рд╕реЗ рдХрд░ рджреЗрдВ рдФрд░ рдХреЛрдИ рднреА рд╢реБрднрд╛рд╡ рддя┐╜
23:17
рдХрдореЗрдВрдЯ рдХрд░реЗрдВ рдФрд░ рдореИрдВрдиреЗ references, further reading рдФрд░ рд╕рдм рдХреБрдЫ рдореИрдВ рдиреАрдЪреЗ рдбрд╛рд▓рддрд╛ рд░рд╣рддрд╛ рд╣реВрдБ, рдиреАрдЪреЗ description
23:23
рдХреЗ рдЕрдВрджрд░ update рдХрд░рддрд╛ рд░рд╣рддрд╛ рд╣реВрдБ, time to time рддреЛ рдЖрдк рд▓реЛрдЧ рдХреЛ рд╕рд╛рд░реЗ рдХреЗ рд╕рд╛рд░реЗ links
23:27
further reading рдХреЛрдИ рднреА detail рд╣реИ рд╡реЛ рдиреАрдЪреЗ description рдореЗрдВ рдорд┐рд▓ рдЬрд╛рдПрдЧреА, code рд╡рдЧреИрд░я┐╜
23:31
рд╕рдм рдХреБрдЫ updated рд░рд╣рддрд╛ рд╣реИ, рдиреАрдЪреЗ links рд░рд╣рддреЗ рд╣реИрдВ in case рдХрднреА рднреА рдХрд┐рд╕реА рднреА рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рдореИрдВ рдмреВрд▓ рднреА рдЬрд╛рддрд╛ рд╣реВрдБ рддреЛ рдЖрдк рд▓реЛя┐╜
23:36
рдХрдореЗрдВрдЯ рдХрд░рдХреЗ рдмрддрд╛рддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рдЕрдкрдбреЗрдЯ рдХрд░ рджреЗрддрд╛ рд╣реВрдБ so рдЕрднреА рдХреЗ рд▓рд┐рдП guys рдЗрд╕ рд╡реАрдбрд┐рдпреЛ рдореЗрдВ рдЗрддрдирд╛ рд╣я┐╜
23:41
thank you so much guys for watching this video and I will see you next time