Categories:
.NET (357)
C (330)
C++ (183)
CSS (84)
DBA (2)
General (7)
HTML (4)
Java (574)
JavaScript (106)
JSP (66)
Oracle (114)
Perl (46)
Perl (1)
PHP (1)
PL/SQL (1)
RSS (51)
Software QA (13)
SQL Server (1)
Windows (1)
XHTML (173)
Other Resources:
You cant use dynamically-allocated memory after you free it?
You cant use dynamically-allocated memory after you free it?
✍: Guest
No. Some early documentation for malloc stated that the contents of freed memory were ``left undisturbed,'' but this ill-advised guarantee was never universal and is not required by the C Standard.
Few programmers would use the contents of freed memory deliberately, but it is easy to do so accidentally. Consider the following (correct) code for freeing a singly-linked list:
struct list *listp, *nextp;
for(listp = base; listp != NULL; listp = nextp) {
nextp = listp->next;
free(listp);
}
and notice what would happen if the more-obvious loop iteration expression listp = listp->next were used, without the temporary nextp pointer.
2016-04-04, 1822👍, 0💬
Popular Posts:
What does a well-written Object Oriented program look like? A well-written object oriented program e...
When does the compiler not implicitly generate the address of the first element of an array? Wheneve...
Can you have virtual functions in Java? Yes, all functions in Java are virtual by default. This is a...
What is the purpose of Replication ? Replication is way of keeping data synchronized in multiple dat...
How To Create an Add-to-Netvibes Button on Your Website? - RSS FAQs - Adding Your Feeds to RSS News ...