what is the use of #pragma pack, wer it is used?
Answers were Sorted based on User's Feedback
Answer / sarabjit kaur
#pragma is a miscelleneous directive which is used to turn
on or off certain features.
It varies frm compiler to compiler
a. #pragma startup and #pragma exit
used to specify which function should b called upon startup
(before main()) or program exit(just before program
terminates)
such funtions should nt receive or return any valur
b. #pragma -warn used to surpress specific warning
#pragma warn -rvl return value warnings surpressed
#pragma warn -par parameter not used warnings surpressed
#pragma warn -rch unreachable code warnings surpressed
| Is This Answer Correct ? | 2 Yes | 3 No |
Answer / ram
actually pragma pack is used for structure padding
we are having #pragma pack 0,#pragma pack 1,#pragma pack
2,#pragma pack 3,#pragma pack 4
in this first one will allocate memory 4 bytes for every
data type
in second one i.e in pack 1 it allocates 1 byte for every
data type
in third one i.e in pack 2 it allocates 2 bytes for every
data type
in fourth one i.e pack 3 it allocates 3 bytes for every data
type
in fifth one i.e pack 4 it allocates 4 bytes for every data type
Actually pragma will be used in powers of 2 only
| Is This Answer Correct ? | 3 Yes | 10 No |
regarding pointers concept
How can I send mail from within a c program?
while running a program, i got the msg that press return key to exit.what that mean in C as there are no such options as far i know.
What are the advantages and disadvantages of pointers?
What are local static variables? How can you use them?
How to access or modify the const variable in c ?
16 Answers HCL, HP,
What is meant by 'bit masking'?
what is the output of the program?? #include<stdio.h> main ( ) { int a=010,sum=0,tracker: for(tracker=0;tracker<=a;tracker++) sum+=tracker; printf(ā %d\nā,sum); } what is the difference between a=10 and a=010??
string reverse using recursion
say the following declaration is correct nr not. int b=a,n=0;
ABCDCBA ABC CBA AB BA A A
main() { int i = 10; printf(" %d %d %d \n", ++i, i++, ++i); }