2. DATA TYPES
Data types are means to identify the type of
data and associated operations of handling
it. C++ provides a predefined set of data
types for handling the data it uses. When
variables are declared of a particular data
type then the variable becomes the place
where the data is stored and data types is
the type of value(data) stored by that
variable. Data can be of may types such as
character, integer, real etc. since the data to
be dealt with are of may types, a
programming language must provide
3. FUNDAMENTAL DATA
TYPES
DATA TYPE MODIFIERS
DATA TYPES
DERIVED DATA TYPES
USER DEFINED DATA
TYPES
4. INTEGER
CHARACTER
FUNDAMENTAL DATA TYPES FLOAT
FUNDAMENTAL DATA TYPES ARE
THOSE THAT ARE NOT COMPOSED
DOUBLE
OF OTHER DATA TYPES
VOID
5. Integers are whole numbers with a machine
dependent range of values. A good programming
language as to support the programmer by
giving a control on a range of numbers and
storage space. C has 3 classes of integer
storage namely short int, int and long int. All of
these data types have signed and unsigned
forms. A short int requires half the space than
normal integer values. Unsigned numbers are
always positive and consume all the bits for the
magnitude of the number. The long and
unsigned integers are used to declare a longer
range of values.
6. CHARACTER DATA TYPE
It can store any member of the C++
implementation's basic character set.
If a character from this set is stored in
a character variable, its value is
equivalent to the integer code of that
character. Character data type is often
called as integer data type because
the memory implementation of char
data type is in terms of the number
code.
7. FLOAT DATA TYPE
A number having fractional part is a
floating- point number. An identifier
declared as float becomes a floating-
point variable and can hold floating-
point numbers. floating point
variables represent real numbers.
They have two advantages over
integer data types:-
1: they can represent values between
integers.
2: they can represent a much greater
range of values.
8. The data type double is also used for handling
floating-point numbers. But it is treated as a
distinct data type because, it occupies twice as
much memory as type float, and stores floating-
point numbers with much larger range and
precision. It is slower that type float.
9. It specifies an empty set of values. It is
used as the return type for functions that
do not return a value. No object of type
void may be declared. It is used when
program or calculation does not require
any value but the syntax needs it.
10. INTEGER TYPE
MODIFIERS
DATA TYPE MODIFIERS CHARACTER TYPE
MODIFIERS
THEY CHANGE SOME
PROPERTIES OF THE DATA
TYPE
FLOATING-POINT
MODIFIERS
11. INTEGER TYPE MODIFIERS
• C++ offers three types of integer data type:-
1:- short integer- at least two bytes.
2:- int integer – at least as big as short.
3:- long integer-at least four bytes.
the prefix signed makes the integer type hold
negative values also. Unsigned makes the integer
not to hold negative values.
12. TYPE APPROXIMATE MINIMAL RANGE
SIZE
SHORT 2 -32768 to 32767
UNSIGNED 2 0 to 65,535
SHORT
SIGNED SHORT 2 Same as short
INT 2 -32768 to 32767
UNSIGNED INT 2 0 to 65,535
SIGNED INT 2 Same as int
LONG 4 -2,147,483,648 TO 2,147,483,647
UNSIGNED 4 0 to 4,294,967,295
LONG
SIGNED LONG 4 Same as long
13. CHARACTER TYPE
MODIFIER
The char can also be signed or unsigned. unlike
int,char is not signed or unsigned by default. It is later
modified to best fit the type to the hardware
properties.
TYPE APPROXIMATE MINIMAL
SIZE RANGE
CHAR 1 -128 to 127
UNSIGNED 1 0 to 255
CHAR
SIGNED CHAR 1 Same as char
14. FLOATING POINT TYPE
MODIFIERS
There are three floating-point types: float, double, and long
double. These types represent minimum allowable range of
types.
Note:- don’t use commas in numeric values assigned to
variables.
TYPE APPROXIMA DIGITS
TE SIZE OF
PRECISIO
N
FLOAT 4 7
LONG 8 15
DOUBLE
LONG 10 19
15. Name Description Size* Range*
signed: -128 to 127
char Character or small integer. 1byte
unsigned: 0 to 255
signed: -32768 to 32767
short int (short) Short Integer. 2bytes
unsigned: 0 to 65535
signed: -2147483648 to
int Integer. 4bytes 2147483647
unsigned: 0 to 4294967295
signed: -2147483648 to
long int (long) Long integer. 4bytes 2147483647
unsigned: 0 to 4294967295
float Floating point number. 4bytes +/- 3.4e +/- 38 (~7 digits)
Double precision floating point
double 8bytes +/- 1.7e +/- 308 (~15 digits)
number.
Long double precision floating
long double 8bytes +/- 1.7e +/- 308 (~15 digits)
point number.
16. ARRAYS
FUNCTIONS
DERIVED DATA TYPES POINTERS
REFERENCES
CONSTANTS
17. ARRAYS
An array is a series of elements of the same type placed
in contiguous memory locations that can be individually
referenced by adding an index to a unique identifier.
That means that, for example, we can store 5 values of
type int in an array without having to declare 5 different
variables, each one with a different identifier. Instead of
that, using an array we can store 5 different values of the
same type, int for example, with a unique identifier.
Like a regular variable, an array must be declared before
it is used. A typical declaration for an array in C++ is:
type name [elements];
18. FUNCTIONS:-
Function groups a number of program statements into a unit and gives it a
name. This unit can be invoked from other parts of a program. A
computer program cannot handle all the tasks by it self. Instead its
requests other program like entities – called functions in C – to get its
tasks done. A function is a self contained block of statements that
perform a coherent task of same kind.
The name of the function is unique in a C Program and is Global. It means
that a function can be accessed from any location with in a C Program.
We pass information to the function called arguments specified when
the function is called. And the function either returns some value to the
point it was called from or returns nothing.
We can divide a long C program into small blocks which can perform a
certain task. A function is a self contained block of statements that
perform a coherent task of same kind.
We first declare the function and then at the end of the program we define
the function.
19. POINTERS:-
The memory of your computer can be imagined as a
succession of memory cells, each one of the minimal size
that computers manage (one byte). These single-byte
memory cells are numbered in a consecutive way, so as,
within any block of memory, every cell has the same
number as the previous one plus one.
This way, each cell can be easily located in the memory
because it has a unique address and all the memory cells
follow a successive pattern. For example, if we are looking
for cell 1776 we know that it is going to be right between
cells 1775 and 1777, exactly one thousand cells after 776
and exactly one thousand cells before cell 2776.
The general form of declaring the pointer is
type*ptr;
20. CONSTANTS:-
C++ constants are not very different from any C++ variable. They
are defined in a similar way and have the same data types and the
same memory limitations. However, there is one major difference -
once a constant has been created and value assigned to it then that
value may not be changed.
Defining Constants with C++
There are actually three ways of defining a constant in a C++ program:
A. by using the preprocessor
B. by using the const key word
C. by using enumerators - these will have a range of integer values
It's also worth noting that there are two types of constant: literal and
symbolic.
the general form of declaring a variable is:-
const int upperage = 50;
21. CLASS
STRUCTURE
USER DEFINED DERIVED DATA
TYPES
UNION
ENUMERATION
22. Class:A class is a collection of variables and
function under one reference name. it is the
way of separating and storing similar data
together. Member functions are often the
means of accessing, modifying and operating
the data members (i.e. variables). It is one
of the most important features of C++ since
OOP is usually implemented through the use
of classes.
23. Classes are generally declared using the
keyword class, with the following
format:
class class_name { access_specifier_1:
member1;
access_specifier_2:
member2; ...
} object_names;
24. STRUCTURES:-
A data structure is a group of data elements grouped together under one name. These
data elements, known as members, can have different types and different lengths.
Data structures are declared in C++ using the following syntax:
struct structure_name {
member_type1 member_name1;
member_type2 member_name2;
member_type3 member_name3;
.
.
} object_names;
where structure_name is a name for the structure type, object_name can be a set of
valid identifiers for objects that have the type of this structure. Within braces { }
there is a list with the data members, each one is specified with a type and a valid
identifier as its name.
Structure is different from an array in the sense that an array represents an aggregate
of elements of same type whereas a structure represents an aggregate of elements of
arbitrary types..
25. Unions allow one same portion of memory to be accessed as different data types, since
all of them are in fact the same location in memory. Its declaration and use is similar to
the one of structures but its functionality is totally different:
union union_name {
member_type1 member_name1;
member_type2 member_name2;
member_type3 member_name3;
.
.
} object_names;
All the elements of the union declaration occupy the same physical space in memory. Its
size is the one of the greatest element of the declaration.
all of them are referring to the same location in memory, the modification of one of the
elements will affect the value of all of them. We cannot store different values in them
independent of each other.
One of the uses a union may have is to unite an elementary type with an array or
structures of smaller elements.
The exact alignment and order of the members of a union in memory is platform
dependant. Therefore be aware of possible portability issues with this type of use.
26. ENUMERATION:-
It can be used to assign names to integer constants.
//Program to illustrate Enumerator
#include<iostream.h>
void main(void)
{
enum type{POOR,GOOD,EXCELLENT};//this is the syntax of enumerator
int var;
var=POOR;//this makes programs more understandable
cout<<var<<endl;
var=GOOD;
cout<<var<<endl;
var=EXCELLENT;
cout<<var;
}
//poor=0
good=1
excellent=2