![Starting Out with C++ from Control Structures to Objects (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133769395/9780133769395_largeCoverImage.gif)
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>;
Adding a value to a pointer variable:
When a pointer variable is added it is similar to adding number of time the size of the pointer variable that is stored.
Example:
//declaring a pointer variable
int *a;
//incrementing the pointer value by 1
a++;
In the above snippet the pointer variable is incremented by “1” means, the size of the pointer variable is being increased in terms of their size.
1 * 2 = 2
Therefore, additional 2 bytes will be added to the pointer variable “a” after incrementing it by “1”.
![Check Mark](/static/check-mark.png)
Want to see the full answer?
Check out a sample textbook solution![Blurred answer](/static/blurred-answer.jpg)
Chapter 9 Solutions
Starting Out with C++ from Control Structures to Objects (8th Edition)
- How may the address of a variable be added to a pointer variable? Why is the code below problematic?arrow_forwardwrite a single statement that performs the specified task. Assume that long variables value1 and value2 have been declared and value1 has been initialized to 200000 ."Assign the address of variable value1 to pointer variable longPtr .arrow_forwardCreate a program in C language that calculates the month's day from a given year and year's day. Use pointers for the month and month's day variables. Don't forget to add proper errors handling in your program. Example or errors - Invalid Input- Invalid year- Invalid year day Example of input # ./month_day <year> <yearday> # Example for Feb 2nd, 2019:\$ ./month-day 2019 33Feb 02, 2019 I have this class - month-day.c - #include <stdio.h> /* month_day function's prototype*/void month_day(int year, int yearday, int *pmonth, int *pday); int main() {return 0;} Note: I don't need the calendar, please read the instructions well!!arrow_forward
- Explain the difference between a pointer variable and other variables such as int, float, char.arrow_forwardwrite C++ statements that perform the specified task. Assume that unsigned integers are stored in four bytes and that the starting address of the built-in array is at location 1002500 in memory. " Write two separate statements that assign the starting address of built-in array values to pointer variable vPtr ."arrow_forwardIn C Language Pleasearrow_forward
- In C Languagearrow_forward#include <stdio.h>int main() {long local;int (*mainptr)(void); /* declare a "pointer to function returning int" */mainptr = main; /* address of main */printf("%p,%p\n",&local,mainptr); /* print the two addresses */return 0;}The printf statement outputs the address of the variable “local”, which should be on the stack rightafter the return address, and then the address of the code for “main”.Start by creating a source file aslrtest.c on your VM containing the above C program. Compileit into an executable with the same name:bash$ gcc -o aslrtest aslrtest.c(As always, the “bash$” in the above represents the prompt and is not part of the command youtype.)a. Turn off ASLR with the command:echo 0 | sudo tee /proc/sys/kernel/randomize_va_spaceOnce you have ASLR disabled, run aslrtest 10 times. The following shell script will do that,(assuming your shell is bash, which it is unless you’ve changed it yourself):bash$ for i in {1..10}> do> ./aslrtest> doneWhat range of output…arrow_forwardWrite a program in C++ that inputs a number in an integer variable. It stores the address of variable in a pointer and then displays the value and the address of the variable. The screen dialog should appear as follows: Enter an integer 25 The value of n: 25 The address of n: 0x234f6arrow_forward
- In C language pleasearrow_forwardAssume ptr is a pointer, the following expressions has the same values *&ptr and ptr? Select one: a. True b. Falsearrow_forward//Write the output of each cout statement.//Assume the size of ints to be 4 bytes.//Assume the size of pointers to ints to be 4 bytes.#include <iostream>using namespace std;int main() {int a[2][2][3]={{{1,2,3},{4,5,6}},{{7,8,9},{10,11,12}}};cout << sizeof(______) << endl; //1: ________________48___________cout << sizeof(a+0) << endl; //2: _____________________________cout << sizeof(______) << endl; //3: ____________24_________________cout << sizeof(______) << endl; //4: ______________12______________ //the address of "a" is 0x7ffee430da70cout << a << endl; //5: ______________________________________________cout << a + 0 << endl; //6: ____________________________________________cout << a + 1 << endl; //7: ____________________________________________cout << *a + 1 << endl; //8: __________________________________________cout << **a + 1 << endl; //9:…arrow_forward
- Systems ArchitectureComputer ScienceISBN:9781305080195Author:Stephen D. BurdPublisher:Cengage LearningC++ for Engineers and ScientistsComputer ScienceISBN:9781133187844Author:Bronson, Gary J.Publisher:Course Technology PtrC++ Programming: From Problem Analysis to Program...Computer ScienceISBN:9781337102087Author:D. S. MalikPublisher:Cengage Learning
![Text book image](https://www.bartleby.com/isbn_cover_images/9781305080195/9781305080195_smallCoverImage.gif)
![Text book image](https://www.bartleby.com/isbn_cover_images/9781133187844/9781133187844_smallCoverImage.gif)
![Text book image](https://www.bartleby.com/isbn_cover_images/9781337102087/9781337102087_smallCoverImage.gif)