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

Compiler design-limit the methods, Problem : Compiler Design - Limit the me...

Problem : Compiler Design - Limit the methods Rahul is a newbie to the programming and while learning the programming language he came to know the following rules: ·

Explain automatic variables, Automatic Variables Automatic variables ar...

Automatic Variables Automatic variables are variable which are explained within the functions. They lose their value when the function terminates. It can be accessed only in th

Program for function in cpp, Question Write a program using c++ for the...

Question Write a program using c++ for the above function , at a= 1000, b=10 -3 ,10 -2 ,10 -4

Define difference among delete and delete[]?, when you allocate memory with...

when you allocate memory with new[], you ought to free the memory via delete[]. While you allocate memory along 'new', then use 'delete' with no the brackets. You employ new[] to a

C program to reverse the elements of array, C program to reverse the elemen...

C program to reverse the elements of array: #define rows 3 #define cols 3 void main() {                 int i=0,j=0;                 int arr[rows][cols];

C program for function of average, C program for function  of average ...

C program for function  of average int average(int); void main() {           int max=0,c=0;           clrscr();           printf("ENTER THE LIMIT OF INPUT FOR AV

Define statements to define the constants, the problem description. The ...

the problem description. The order of the C Program should be as follows: Variables and constants Use #define statements to define the constants. Use arr

How many levels deep can include files be nested, How many levels deep can ...

How many levels deep can include files be nested? - As such, there is no limit to number of levels of nested include files you can have however your compiler might run out of s

Subtraction of numbers, Two numbers to be subtracted using bitwise operatio...

Two numbers to be subtracted using bitwise operations

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