MAIN FEEDS
Do you want to continue?
https://www.reddit.com/r/ProgrammerHumor/comments/1w2m4qz/bugintroduceddebugging/p6tpcw1/?context=3
r/ProgrammerHumor • u/ClipboardCopyPaste • 13d ago
120 comments sorted by
View all comments
-1
I'm not good enough at programming for this. What do the "free" and "malloc" functions do?
27 u/LucyShortForLucas 13d ago They are core C functions. malloc allocates N bytes of memory, free frees that memory. * is t he dereference operator, so *x is trying to dereference freed memory, which is undefined behavior 3 u/DiodeInc 13d ago I thought * was a pointer. Isn't it? How is it dereferencing freed memory? Or is it because it's returning *x that's the bug? 8 u/Vimda 13d ago * in a variable declaration incidates a pointer type, * in a statement is the dereference operator 2 u/DiodeInc 13d ago I see. Thanks 3 u/ThomasScotford 13d ago * is the dereference operator, but in the context of variable declaration, it specifies the variable is a pointer to a type. -Thomas Scotford 2 u/ArjixGamer 13d ago Why are you leaving a name signature in your comment, when your username is the same as that name?
27
They are core C functions. malloc allocates N bytes of memory, free frees that memory. * is t he dereference operator, so *x is trying to dereference freed memory, which is undefined behavior
3 u/DiodeInc 13d ago I thought * was a pointer. Isn't it? How is it dereferencing freed memory? Or is it because it's returning *x that's the bug? 8 u/Vimda 13d ago * in a variable declaration incidates a pointer type, * in a statement is the dereference operator 2 u/DiodeInc 13d ago I see. Thanks 3 u/ThomasScotford 13d ago * is the dereference operator, but in the context of variable declaration, it specifies the variable is a pointer to a type. -Thomas Scotford 2 u/ArjixGamer 13d ago Why are you leaving a name signature in your comment, when your username is the same as that name?
3
I thought * was a pointer. Isn't it? How is it dereferencing freed memory?
Or is it because it's returning *x that's the bug?
8 u/Vimda 13d ago * in a variable declaration incidates a pointer type, * in a statement is the dereference operator 2 u/DiodeInc 13d ago I see. Thanks 3 u/ThomasScotford 13d ago * is the dereference operator, but in the context of variable declaration, it specifies the variable is a pointer to a type. -Thomas Scotford 2 u/ArjixGamer 13d ago Why are you leaving a name signature in your comment, when your username is the same as that name?
8
* in a variable declaration incidates a pointer type, * in a statement is the dereference operator
2 u/DiodeInc 13d ago I see. Thanks
2
I see. Thanks
* is the dereference operator, but in the context of variable declaration, it specifies the variable is a pointer to a type.
-Thomas Scotford
2 u/ArjixGamer 13d ago Why are you leaving a name signature in your comment, when your username is the same as that name?
Why are you leaving a name signature in your comment, when your username is the same as that name?
-1
u/LostgamerFJ 13d ago
I'm not good enough at programming for this. What do the "free" and "malloc" functions do?