Explain the new and delete operators, C/C++ Programming

Assignment Help:

The new and delete operators

The C language has explained library functions- malloc() and free() for dynamic allocation and de-allocation of memory. C++ gives yet another approach to allocate blocks of memory - the new operator. This operator allocates memory for a given size and returns a pointer to its starting point. C++ also gives delete, to release the memory allocated by new. The pointer returned by the new operator require not be typecasted.

e.g.

                char arr[100];     // Compile_time allocation of an array

                char *arr;                             // Character pointer

arr = new char[size];                       //Run time allocation of an

                                                                //array. Size can be a

                                                                //constant or a variable.

In the above example, new returns a pointer to a block of size bytes. It is synonymous with declaring a character array. Though, declaring an array is an example of static binding - the array is built at the compile-time. This array remains in existence right from the beginning of the program to its end, even if not in use. While, the array declared by new operator can be allocated memory only when required and can be released when over with, using the delete operator. This is an example of dynamic binding.

 


Related Discussions:- Explain the new and delete operators

Explain integer literal, Integer literal Integer is numbers without fra...

Integer literal Integer is numbers without fractional parts. e.g. 20       // Decimal 024      // Octal     0x14     // Hexadecimal To indicate long, unsigned,

Define array of structures, Define Array of Structures? An Array of Str...

Define Array of Structures? An Array of Structures is an assortment of the same data types which are declared as structures. It is useful to store large and different number of

Sorted linked list , Node *orderedInsert(Node *p, int newval); /* Allocates...

Node *orderedInsert(Node *p, int newval); /* Allocates a new Node with data value newval and inserts into the ordered list with first node pointer p in such a way that the data va

Explain the functions strlen ( ), Question 1 Consider you have to find out...

Question 1 Consider you have to find out average marks of 100 students in a class. Write simple program(s) using different iteration statements to accomplish it Question 2 Expla

B tree, real time application of b tree

real time application of b tree

Define procedure to return the sum of the odd elements, (a) Define a proced...

(a) Define a procedure (deep-member x e) that takes a list x and an element e and returns #t if the element e is in the list or in any lists that the list x contains. e.g., (dee

Algorithms, write an algorithm for multiplication of two sparse matrices us...

write an algorithm for multiplication of two sparse matrices using linked lists

Describe faster ++i or i++, A: The answer to this lies actually, how they u...

A: The answer to this lies actually, how they used. Along ++i(PreIncrement) the variable is incremented and new value is returned. Thus it needs one instruction to increment the va

C CODING, HOW THE C PROGRAM CODING IMPLEMENTED DY ITSELF UNDERSTANDING . AL...

HOW THE C PROGRAM CODING IMPLEMENTED DY ITSELF UNDERSTANDING . ALSO HOW I CAN A BECOME A GOOD PROGRAMMER IN C WHAT I DO FOR GOOD PROGRAMMING ,TELL ME HOW C CODING DEVELOP DY ITSELF

What is a template in c++, Templates permit to create generic functions tha...

Templates permit to create generic functions that admit any data type as parameters and return value without having to overload the function with all the possible data types. Until

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd