- calloc(...) allocates a block of memory for an array of elements of a certain size. By default the block is initialized to 0. The total number of memory allocated will be (number_of_elements * size).
- malloc(...) takes in only a single argument which is the memory required in bytes. malloc(...) allocated bytes of memory and not blocks of memory like calloc(...).
- malloc(...) allocates memory blocks and returns a void pointer to the allocated space, or NULL if there is insufficient memory available.
- calloc(...) allocates an array in memory with elements initialized to 0 and returns a pointer to the allocated space. calloc(...) calls malloc(...) in order to use the C++ _set_new_mode function to set the new handler mode.
"printf(...)" and "sprintf(...)"
:
- sprintf(...) writes data to the character array.
- printf(...) writes data to the standard output device.
To check whether a linked list is
circular :
Create two pointers, and set both to the start of
the list. Update each as follows:
while (pointer1) {
pointer1 = pointer1->next;
pointer2 = pointer2->next;
if (pointer2) pointer2=pointer2->next;
if (pointer1 == pointer2) {
print ("circular");
}
}
If a list is circular, at some point pointer2 will
wrap around and be either at the item just before pointer1, or the item before
that. Either way, its either 1 or 2 jumps until they meet.
Post a Comment
Note: Only a member of this blog may post a comment.