Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

What will the following code print? Note: the sizeof() function returns the numb

ID: 3931637 • Letter: W

Question

What will the following code print?

Note: the sizeof() function returns the number of bytes of the argument passed to it.

#include <iostream>

using namespace std;

int main( )

{ typedef int my_2darray[1][1];

my_2darray b[3][2];

cout<<sizeof(b)<<endl;

cout<<sizeof(b+0)<<endl;

cout<<sizeof(*(b+0))<<endl;

// the next line prints 0012FF4C

cout<<"The address of b is: "<<b<<endl;

cout<<"The address of b+1 is: "<<b+1<<endl;

cout<<"*(b+1) is: "<<*(b+1)<<endl<<endl;

cout<<"The address of &b is: "<<&b<<endl;

cout<<"The address of &b+1 is: "<<&b+1<<endl<<endl;

return 0;

}

Explanation / Answer

#include <iostream>
using namespace std;
int main( )
{ typedef int my_2darray[1][1];
my_2darray b[3][2];
cout<<sizeof(b)<<endl; //it will return size of b i.e b is a type of int array=4 bytes,total element in b=6 therefore,ans=24
cout<<sizeof(b+0)<<endl; //size of first array,its a 2d array hence=2*4=8
cout<<sizeof(*(b+0))<<endl; //size of first array,its a 2d array hence=2*4=8
// the next line prints 0012FF4C
cout<<"The address of b is: "<<b<<endl; //address of b,could be different each time you execute the code
cout<<"The address of b+1 is: "<<b+1<<endl; //address of b+1,could be different each time you execute //the code
cout<<"*(b+1) is: "<<*(b+1)<<endl<<endl; //same as address of b+1
cout<<"The address of &b is: "<<&b<<endl; //same as address of b
cout<<"The address of &b+1 is: "<<&b+1<<endl<<endl; //address of &b+1,could be different each time //you execute the code
return 0;
}


*****OUTPUT**********

24
8   
8   
The address of b is: 0x7ffdb8976a90   
The address of b+1 is: 0x7ffdb8976a98   
*(b+1) is: 0x7ffdb8976a98   
  
The address of &b is: 0x7ffdb8976a90
The address of &b+1 is: 0x7ffdb8976aa8

*****OUTPUT**********

Please let me know in case of any doubt,thanks.

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote