How much is size of struct having 1 char & 1 integer?
Answers were Sorted based on User's Feedback
Answer / vadivelt
The size of the stucture depends on the following factors.
1.Depends on the size of the datatype, allocated by compiler
2.Depends on the allignment of the variables in the
structure.
If variables of different datatypes are misalligned, then
badding bytes will be added by the compiler to falitate to
speed up the memory access by the processor.So that the size
of the structure will increase.
| Is This Answer Correct ? | 11 Yes | 4 No |
Answer / raja
you will have to study through structure padding concepts.
It depends on the compiler.
struct
{
char a;
int b;
}
The above struct size will be 8 in standard compilers (Turbo
C is a non-standard compiler). bcoz between a and b there
will be 3 pad bytes placed..
Refer this link you will know everything about structure
padding..All d best :)
http://www.allinterview.com/showanswers/62991.html
| Is This Answer Correct ? | 5 Yes | 1 No |
Answer / poorn singh
the object for the struct will use 3 bytes (1 byte for char and 2 byte for integer) in a sequential manner.
| Is This Answer Correct ? | 9 Yes | 6 No |
Answer / amruta
i think its 3 bytes
i am not getting how is it 8 bytes
| Is This Answer Correct ? | 7 Yes | 6 No |
as the size of char in C++ and C is one byte and the size of
int in C++,c is 2 byte so when we illl call that struct then
the memory will assigned the contents of these char and
int's variables
But
Char in C# and java is of 16 bit and in is of 32 bits and
double of 64 bits so the size of struct is depends upon
these languages.
| Is This Answer Correct ? | 2 Yes | 2 No |
Answer / uttam kumhar
1 char always hold 1 byte in c in any 32-bit or 64-bit system
but in case of int it vary on the system.if there is 32-bit system the int hold 4-byte memory ...and if 64-bit system int hold 2-byte memory....
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / chinmay
#include<stdio.h>
#include<conio.h>
void main()
{
struct idk
{
char ch;
int i;
}abc;
printf("size of structure is: %d",sizeof(abc));
getch();
}
O/P is 3
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / santosh jain
zero , struct will not have any size in memory untill
object is created.
| Is This Answer Correct ? | 7 Yes | 12 No |
Answer / saranya
The character datatype takes "1 Byte" for their memory. the
integer takes "2 Bytes" for their memory
| Is This Answer Correct ? | 6 Yes | 12 No |
What is else if syntax?
What are the four main data types?
What is a multiset c++?
Why is it called c++?
Why namespace is used in c++?
What is implicit conversion/coercion in c++?
Can we have "Virtual Constructors"?
Why is c++ still best?
When should you use global variables?
When one must use recursion function? Mention what happens when recursion functions are declared inline?
What is ios class in c++?
What operator is used to access a struct through a pointer a) >> b) -> c) *