09-20-2017
The only parts you didn't mention are signed vs unsigned, pointers, and bitfields. Pointers on most modern systems are all the same size, related to the system's address size, i.e. 32-bit on 32 bit systems, 64-bit on 64.
Note that "long long" and "long double" are nonstandard types, unavailable on many systems. "long long" particularly is no longer needed to get a 64-bit type, 'long' has become natively 64-bit on modern 64-bit computers (except on Windows for some reason).
Also, the exact number of bits in 'char', 'short', 'int', and 'long' are not rigidly defined by the language, they're a fact of the processor you use it with, though even there they're sometimes interpreted differently from publisher to publisher. There was a compiler for a strange Cray supercomputer which had no types smaller than 64 bits!
Bitfields are a rarely-used feature which can make an integer of an arbitrary number of bits (probably up to the system word size.) int y:4; Voila, a 4-bit integer which can represent values from -8 to +7. This feature is mostly avoided as it's slow and wasteful of space. I've only seen it used exactly once -- to make ersatz 32-bit integers for that strange Cray supercomputer.
Last edited by Corona688; 09-20-2017 at 01:04 PM..
This User Gave Thanks to Corona688 For This Post:
9 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
can anyone explain me difference between tar and ufsdump commands.............and also i wd like to know the difference between incremental and differential backup.........
thx in advance (1 Reply)
Discussion started by: girish_shukla
1 Replies
2. Filesystems, Disks and Memory
I have a file of type .for extension .In a guui based unix environment like solaris if I double click on that file a specific program designed by me has to run which takes this file as the parameter and exceutes the program.
Can anyone help me? (8 Replies)
Discussion started by: nhk_srd
8 Replies
3. UNIX for Dummies Questions & Answers
What is the difference between:
cd /tmp
tar -cf - *.txt |gzip > tmp_txt.tar.gz
and
cd /tmp
mknod pipe p
gzip < pipe > /tmp/tmp_txt1.tar.gz &
tar -cf pipe *.txt
Apart from the fact that we have to create the pipe file manually, is there any difference in the performance of the two?... (5 Replies)
Discussion started by: blowtorch
5 Replies
4. UNIX for Dummies Questions & Answers
Hi,
I am trying to launch an ogg movie from a pdf file which has been produced with pdflatex and
\movie
{\centerline{\includegraphics
{grafiques_xerrades/un_manolo_amb_camera.pdf}}}
{hlims_xerrades/XocCumuls.ogg}
The switch "externalviewer" makes kpdf launch the default... (5 Replies)
Discussion started by: pau
5 Replies
5. UNIX for Dummies Questions & Answers
Hi Folks,
As I am familiar wih both types compresion forms: gun-zip and .rpm. My questions is how do I uncompress gunz.zip type? As the .rpm I can double click and it will extract...Can someone shed some light on this and thank you...
M (2 Replies)
Discussion started by: Mombo_Z
2 Replies
6. Programming
If I want to declare an array of structures in C and have the number of items in that array to correspond to the items of an enumeration, is there a way to access the maximum value in the enumeration when declaring the array?
For instance:
typedef struct
{
various fields....
} ... (3 Replies)
Discussion started by: cleopard
3 Replies
7. What is on Your Mind?
On another simple topic, multiple choice answers OK ( you can pick more than one or suggest others - we will add your suggestions to the poll ).
What Types of Food Do You Like The Most? (27 Replies)
Discussion started by: Neo
27 Replies
8. Shell Programming and Scripting
hi,
how to I do this?
i="4.000"
if ; then
echo "smaller"
fi
how do I convert the "4.000" to 4?
Thanks! (4 Replies)
Discussion started by: h0ujun
4 Replies
9. Shell Programming and Scripting
the following excludes certain directories successfully
cp -r probe/!(dir) /destination
I want to exclude certain file types and tried unsuccessfully
cp -r probe/!(*.avi) /destination (2 Replies)
Discussion started by: tmf
2 Replies
values.h(3HEAD) Headers values.h(3HEAD)
NAME
values.h, values - machine-dependent values
SYNOPSIS
#include <values.h>
DESCRIPTION
This file contains a set of manifest constants, conditionally defined for particular processor architectures.
The model assumed for integers is binary representation (one's or two's complement), where the sign is represented by the value of the
high-order bit.
BITS(type) The number of bits in a specified type (for example, int).
HIBITS The value of a short integer with only the high-order bit set.
HIBITL The value of a long integer with only the high-order bit set.
HIBITI The value of a regular integer with only the high-order bit set.
MAXSHORT The maximum value of a signed short integer.
MAXLONG The maximum value of a signed long integer.
MAXINT The maximum value of a signed regular integer.
MAXFLOAT, LN_MAXFLOAT The maximum value of a single-precision floating-point number, and its natural logarithm.
MAXDOUBLE, LN_MAXDOUBLE The maximum value of a double-precision floating-point number, and its natural logarithm.
MINFLOAT, LN_MINFLOAT The minimum positive value of a single-precision floating-point number, and its natural logarithm.
MINDOUBLE, LN_MINDOUBLE The minimum positive value of a double-precision floating-point number, and its natural logarithm.
FSIGNIF The number of significant bits in the mantissa of a single-precision floating-point number.
DSIGNIF The number of significant bits in the mantissa of a double-precision floating-point number.
SEE ALSO
intro(3) math.h(3HEAD)
SunOS 5.10 2 Mar 1993 values.h(3HEAD)