+ 1
Malloc and string length
Why does the length of the input changes when i use memory allocation ? It gives the same output but not the same length https://code.sololearn.com/c0VBrO0TastU/?ref=app https://code.sololearn.com/cTvVU5ssk2HH/?ref=app
2 Answers
+ 5
Dark there is a problem with trying to use memory after freeing it. Once memory is freed, it is available to be allocated and overwritten by any other process. In fact, that is what is happening. The call to printf evidently overwrites the memory formerly allocated to sen.
Move the printf to occur before the free statements.
It is common practice to set the pointer equal to null after freeing it in order to prevent accidental references to freed memory later in the program.
+ 1
Brian
Oh i got it, tried it and worked đ
.
thanks for explaining ^^