Hello!!!I have a question... How many bytes has the array int b[5]={0,0,0,0,0}???
My teacher said it has 18 bytes,but I think it has 10 bytes...
Which answer is the right one???
Printable View
Hello!!!I have a question... How many bytes has the array int b[5]={0,0,0,0,0}???
My teacher said it has 18 bytes,but I think it has 10 bytes...
Which answer is the right one???
b is an array of 5 ints. So the answer must be a multiple of 5 - so the teacher's answer is wrong!
The correct answer depends upon the size of an int. If an int size is 16 bits (ie 2 bytes) then the correct answer is 10. If an int size is 32 bits (ie 4 bytes) then the correct answer is 20.
Try this program
On my system it prints 4 and 20.Code:#include <iostream>
using namespace std;
int main()
{
int b[5]={0,0,0,0,0};
cout << "An int has " << sizeof(int) << " bytes" << endl;
cout << "int b[5] has " << sizeof(b) << " bytes" << endl;
return 0;
}
Great... Thank you!!! :)