Concept explainers
Pointer:
Pointer, the name itself references the purpose of the pointer. Pointers point to a location in memory.
- Pointer is a special type of variable to store the address of the memory location, which can be accessed later.
- If an asterisk “*” operator is present before the variable, then that variable is referred as pointer variable.
- It is also called as dereferencing or indirection operator.
- Pointer is just a type of variable that stores the addresses of other variables.
- Using pointers, we can access the address of a variable; the data stored in that variable can be retrieved.
Syntax of pointer variable declaration:
<variable-type> *<variable-name>;
Example for pointer variable declaration:
//definition of pointer variable
int *ptrvar;
Where,
- int is the variable type.
- * ptrvar is the pointer variable name.
Pointer will allow the user to indirectly access and manipulate the data contents of the variable. A pointer variable will hold the address of the data contents.
Note:
- When the symbol “&” is placed prior the pointer variable, it will hold address of the pointer variable.
- When the symbol “*” is placed prior the pointer variable, it will hold the value of the pointer variable.
Purpose of “new” operator:
The main purpose of the “new” operator is to dynamically allocate memory. Dynamic memory allocation is process where an individual chunk of memory space is allocated by the compiler that is sufficient for the storage of variables. This kind of allocation is possible with pointer variables.
Example:
Consider a pointer variable of type integer needs to be allocated dynamically and it can be made possible using new operator as shown below:
//null pointer declaration
int *myptr = nullptr;
//dynamic allocation of memory
myptr = new int;
Want to see the full answer?
Check out a sample textbook solutionChapter 9 Solutions
Starting Out with C++ from Control Structures to Objects (9th Edition)
- int main(int argc, char **argv) { float *rainfall; float rain_today; // rainfall has been dynamically allocated space for a floating point number. // Both rainfall and rain today have been initialized in hidden code. // Assign the amount in rain_today to the space rainfall points to. return 0; }arrow_forwardWhich aggregating operations on struct variables are permissible but not on array variables?arrow_forwardAspects of array that are good and badarrow_forward
- Define the term " pointer to void " .arrow_forwardvar newStaff =new Employee[3]; is used to: Select one: a. Creates and initializes an Array with three objects of type Employee b. The statement is not valid in Java c. Create an Array to store two Employee objects d. Create an Array to store three objects of type Employeearrow_forwardPlease explain this question void main() {int a =300; char *ptr = (char*) &a ; ptr ++; *ptr =2; printf("%d", a); }arrow_forward
- EBK JAVA PROGRAMMINGComputer ScienceISBN:9781337671385Author:FARRELLPublisher:CENGAGE LEARNING - CONSIGNMENT