Академический Документы
Профессиональный Документы
Культура Документы
By
Faiza Qayyum
Department of Computer Science,
Capital University of Science and Technology, Islamabad
History
• C evolved from two languages (BCPL and B)
• 1980: “C with Classes”
• 1985: C++ 1.0
• 1995: Draft standard
• Developed by Bjarne Stroustrup at Bell Labs
• Based on C, added Object-Oriented
Programming concepts (OOP) in C
• Similar program performance (compared to C)
C vs C++
• Advantages:
– 1. Faster development time (code reuse)
– 2. Creating / using new data types is easier
– 3. Easier memory management
– 4. Stricter syntax & type checking => less bugs
– 5. Easier to implement Data hiding
– 6. Object Oriented concepts
C++ Program Structure
//My first program in C++ First.cpp
Preprocessor
Directive (no ;)
#include <iostream>
using namespace std;
int main ()
{
cout << "Hello World!";
return 0;
}
IDE and Compilation Steps
First.cpp
• Main components:
– Source code editor
– Debugger
– Complier
–…
IDEs on Windows platform
• Turbo C++
• Dev C++
Input / Output Example
#include <iostream>
#include <string>
using namespace std;
int main ( )
{
string name; //Name of student
cout<< “Enter you name";
cin>>name;
/* Now print hello , and students name */
cout<< “Hello “ << name;
return 0;
}
Comments
• Two types of comments
1. Single line comment //….
2. Multi-line (paragraph) comment /* */
• # is a preprocessor directive.
void main(){
float x = 6 + Mine::pi;
cout<<x;
}
Multiple Namespaces
• Example…
Omitting std:: prefix
- using directive brings namespaces or its sub-items
into current scope
#include<iostream>
using namespace std;
int main()
{
cout<<“Hello World!”<<endl;
cout<<“Bye!”;
return 0;
}
main( ) function
• Every C++ program start executing from main ( )
• Examples…
cout and endl
• cout (console output) and the operator
• << referred to as the stream insertion operator
• << “Inserts values of data-items or string to
screen.”
• >> referred as stream extraction operator, extracts
value from stream and puts into “Variables”
–Whitespace characters:
• space,
• tab,
• newline {enter key}
Variables
- Variables are identifiers which represent
some unknown, or variable-value.
x = a + b;
Speed_Limit = 90;
Variable declaration
Examples:
int marks;
double Pi;
int suM;
char grade;
Marks
FE07
Using Variables: Initialization
• Variables may be given initial values, or
initialized, when declared. Examples:
length
int length = 7 ; 7
diameter
float diameter = 5.9 ; 5.9
initial
char initial = ‘A’ ; ‘A’
rvalue and lvalue
• Are the two occurrences of “a” in this expression the
same?
a = a + 1;
One on the left of the assignment refers to the location
of the variable (whose name is a, or address);
One on the right of the assignment refers to the value of
the variable (whose name is a);
int i, j;
i = 7;
7 = i;
j * 4 = 7;
Data Types
Three basic PRE-DEFINED data types:
1. To store whole numbers
– int, long int, short int, unsigned int
3. Characters
– char
Types and literals
• Built-in types Literals
– Boolean type • Boolean: true, false
• bool
– Character types • Character literals
• char – 'a', 'x', '4', '\n', '$'
– Integer types
• int • Integer literals
– and short and – 0, 1, 123, -6,
long
– Floating-point types • Floating point literals
• double – 1.2, 13.345, 0.3, -0.54,
– and float
• String literals
• Standard-library types – "asdf”, “Helllo”, Pakistan”
– string
Types
• C++ provides a set of types
– E.g. bool, char, int, double called “built-in types”
int b = 9; 9
char c = 'a'; a
Examples:
– char grade;
– unsigned char WeekNumber= 200;
– char cGradeA = 65;
– char cGradeAA = ‘A';
char type
• Example program…
Special characters
• Text string special characters (Escape Sequences)
– \n = newline
– \r = carriage return
– \t = tab
– \" = double quote
– \? = question
– \\ = backslash
– \' = single quote
• Examples:
cout << "Hello\t" << "I\’m Ali\n";
cout << "123\nabc “;
Escape Sequence
• Example Program:
int type
• 16 bits (2 bytes) on Windows 16-bits
– int -32,768 to 32,767
– unsigned int 0 to 65,535
– Also on Turbo C++, 2 bytes for int
• short int
– reserves 16 bits (2 bytes) of memory
– signed short int -32,768 to 32,767
– unsigned short int 0 to 65,535
int (long and short)
• Examples:
long int light_speed=186000;
unsigned long int seconds= 604800;
short int Height = 30432;
unsigned short int Width = 50000;
Home Work-1
• Use Visual C++ on Windows and get information
for following data types:
– int
– short
– long int
– short int
– char
• Use ( cout << sizeof( intVar ); ) operator to get
this information, Example:…
Real Values
• float
– Reserves 32 bits (4 bytes) of memory
+38
– + 1.180000x10 , 7-digit precision
– Example: float radius= 33.4221;
• double
– Reserves 64 bits (8 bytes)+308
of memory
– + 1.79000000000000x10 , 15-digit precision
– Example: double Distance = 257.5434342;
• long double
– Reserves 80 bits (10 bytes) of memory , 18-digit precision
– Example: long double EarthMass = 25343427.53434233;
Home Work-2
• Use Visual C++ on Windows and get information
for following data types:
– float
– double
– long double
• Literal values:
– true
– false