HP C Programmer's Guide (92434-90009)

44 Chapter3
Calling Other Languages
Comparing HP C and HP Pascal
Comparing HP C and HP Pascal
Table on page 44 summarizes the differences in storage allocation between HP C and HP
Pascal. The footnote numbers refer to notes located in a section immediately following the
table.
Table 3-1. HP C versus HP Pascal Storage Allocation
HP C Type HP C Description Correspondin
g HP Pascal
Type
HP Pascal Description
char, signed
char
1 byte, byte aligned 1 byte, byte aligned; Subrange:
-128 .. 127
unsigned char 1 byte, byte aligned char 1 byte, byte aligned; Subrange: 0..
255
short 2 bytes, 2-byte aligned shortint Subrange: -32768..32767
unsigned short 2 bytes, 2-byte aligned Subrange: 0 .. 65535
int 4 bytes, 4-byte aligned integer 4 bytes, 4-byte aligned; Subrange:
-2147483648 .. 2147483647
unsigned int 4 bytes, 4-byte aligned 4 bytes, 4-byte aligned; Subrange:
0 .. 4294967295
long 4 bytes, 4-byte aligned integer Subrange: -2147483648 ..
2147483647
unsigned long 4 bytes, 4-byte aligned 4 bytes, 4-byte aligned; Subrange:
0 .. 4294967295
(See Note 1) longint 8 bytes, 4-byte aligned
float 4 bytes, 4-byte aligned real 4 bytes, 4-byte aligned
double 8 bytes, 8-byte aligned longreal 8 bytes, 8-byte aligned
long double 16 bytes, 16-byte
aligned
enum 4 bytes, 4-byte aligned enumeration
or integer
(See Note 2)
1 byte if fewer than 257 elements;
2 bytes if between 257 and 65536;
otherwise, 4 bytes. 1, 2, or 4-byte
aligned.
char enum 1 byte, 1-byte aligned 1 byte, 1-byte aligned, subrange:
-128..127
short enum 2 bytes, 2-byte aligned short int subrange: -32768..32767
int enum 4 bytes, 4-byte aligned integer 4 bytes, 4-byte aligned, subrange:
-2,147,483,648..2,147,483,647