SlideShare a Scribd company logo
1 of 21
// Functions that take no arguments
#include <iostream>
using namespace std;
void function1();
void function2( void );
int main()
{
function1();
function2();
return 0;
}
void function1()
{
cout << "function1 takes no arguments" << endl;
}
void function2( void )
{
cout << "function2 also takes no arguments" << endl;
}
Example
#include <iostream>
using namespace std;
void printStars();
int main()
{
printStars(); //Line 1
cout << "********** Annual ***********" << endl; //Line 2
printStars(); //Line 3
cout << "******* Spring Sale **********" << endl; //Line 4
printStars(); //Line 5
return 0;
}
void printStars()
{
cout << "******************************" << endl;
cout << "******************************" << endl;
}
solution
#include<iostream>
using namespace std;
void square( int m ); // function prototype
//it can be int square( int );
int main()
{
for ( int x = 1; x <= 10; x++ )
square( x ) ; //calling statement x is actual parameter
cout << endl;
return 0;
}
// Function definition
void square( int y ) // Heading y is Formal Parameter
{
return y * y; // The return Statement
}
#include<iostream>
using namespace std;
void square( int m ); // function prototype
//it can be int square( int );
int main()
{
for ( int x = 1; x <= 10; x++ )
square( x ) ; //calling statement x is actual parameter
cout << endl;
return 0;
}
// Function definition
void square( int y ) // Heading y is Formal Parameter
{
cout<< y * y<<endl; // The return Statement
}
)Reference and Value
parameters)
Modify (Value parameters)
#include<iostream>
using namespace std;
void modify( int m ); // function prototype
int main()
{
int x;
x=7;
cout<<"x befor calling modify function = "<<x<<endl;
modify( x ) ; //calling statement x is actual parameter
cout<<"x After calling modify function = "<<x<<endl;
cout << endl;
return 0;
}
// Function definition
void modify( int y ) // Heading y is Formal Parameter
{
y=y+10; // The return Statement
cout<<"y inside modify function = "<<y<<endl;
}
Reference parameters
#include<iostream>
using namespace std;
void modify( int &m ); // function prototype
int main()
{
int x;
x=7;
cout<<"x befor calling modify function = "<<x<<endl;
modify( x ) ; //calling statement x is actual parameter
cout<<"x After calling modify function = "<<x<<endl;
cout << endl;
return 0;
}
// Function definition
void modify( int &y ) // Heading y is Formal Parameter
{
y=y+10; // The return Statement
cout<<"y inside modify function = "<<y<<endl;
}
Reference
// References must be initialized
#include <iostream>
using namespace std;
int main()
{
int x = 3, &y = x; // y is now an alias for x
cout << "x = " << x << endl << "y = " << y << endl;
y = 7;
cout << "x = " << x << endl << "y = " << y << endl;
return 0;
}
// A scoping example
#include <iostream>
using namespace std;
void a( ); // function prototype
void b( ); // function prototype
void c( void ); // function prototype
int x = 1; // global variable
int main()
{
int x = 5; // local variable to main
cout << "local x in outer scope of main is " << x << endl;
{ // start new scope
int x = 7;
cout << "local x in inner scope of main is " << x << endl;
} // end new scope
cout << "globel x in outer scope of main is " << ::x << endl;
cout << "local x in outer scope of main is " << x << endl;
cout<<"*************************************************"<<endl;
a(); // a has automatic local x
b(); // b has static local x
c(); // c uses global x
cout<<"*************************************************"<<endl;
cout<<"Afetr second calling"<<endl;
a(); // a reinitializes automatic local x
b(); // static local x retains its previous value
c(); // global x also retains its value
cout <<endl<< "local x in main is " << x <<endl<< endl;
return 0;
}
5
7
1
5
5
void a( )
{
int x = 25; // initialized each time a is called
cout << endl << "local x in a is " << x
<< " after entering a" << endl;
}
void b( )
{
static int x = 50; // Static initialization only
// first time b is called.
cout << endl << "local static x is " << x
<< " on entering b" << endl;
x=x+2;
}
void c( void )
{
cout << endl << "global x is " << x
<< " on entering c" << endl;
x *= 10;
}
25
50 in first
call
10 after
second call
1
25 in
secon
d call
52 in Second
call call
// Using overloaded functions
// Using overloaded functions
#include <iostream>
using namespace std;
int square( int x );
double square( double y );
int main()
{
cout << "The square of integer 7 is " << square( 7 )<<endl
<< "The square of double 7.5 is " << square( 7.5 )
<< endl;
return 0;
}
int square( int x )
{
return x * x;
}
double square( double y )
{
return y * y;
}
// Using default arguments
// Using default arguments
#include <iostream>
using namespace std;
int boxVolume( int length = 1, int width = 1, int height = 1 );
int main()
{
cout << "The default box volume is: " << boxVolume()
<<endl;
cout<< "width 1 and height 1 is: " << boxVolume( 10 )
<< endl;
cout << "width 5 and height 1 is: " << boxVolume( 10, 5 )
<< endl;
cout << "width 5 and height 2 is: " << boxVolume( 10, 5, 2 )
<< endl;
return 0;
}
// Calculate the volume of a box
int boxVolume( int length, int width, int height )
{
return length * width * height;
}
Ch7 C++

More Related Content

What's hot

FP 201 - Unit 3 Part 2
FP 201 - Unit 3 Part 2FP 201 - Unit 3 Part 2
FP 201 - Unit 3 Part 2
rohassanie
 
FP 201 - Unit 6
FP 201 - Unit 6FP 201 - Unit 6
FP 201 - Unit 6
rohassanie
 
18 dec pointers and scope resolution operator
18 dec pointers and scope resolution operator18 dec pointers and scope resolution operator
18 dec pointers and scope resolution operator
SAFFI Ud Din Ahmad
 

What's hot (20)

Lecture#9 Arrays in c++
Lecture#9 Arrays in c++Lecture#9 Arrays in c++
Lecture#9 Arrays in c++
 
Lecture#8 introduction to array with examples c++
Lecture#8 introduction to array with examples c++Lecture#8 introduction to array with examples c++
Lecture#8 introduction to array with examples c++
 
C++ ch2
C++ ch2C++ ch2
C++ ch2
 
Fp201 unit5 1
Fp201 unit5 1Fp201 unit5 1
Fp201 unit5 1
 
C++ Pointers
C++ PointersC++ Pointers
C++ Pointers
 
FP 201 - Unit 3 Part 2
FP 201 - Unit 3 Part 2FP 201 - Unit 3 Part 2
FP 201 - Unit 3 Part 2
 
46630497 fun-pointer-1
46630497 fun-pointer-146630497 fun-pointer-1
46630497 fun-pointer-1
 
FP 201 - Unit 6
FP 201 - Unit 6FP 201 - Unit 6
FP 201 - Unit 6
 
Functions in C++
Functions in C++Functions in C++
Functions in C++
 
Learning C++ - Functions in C++ 3
Learning C++ - Functions  in C++ 3Learning C++ - Functions  in C++ 3
Learning C++ - Functions in C++ 3
 
C++ functions presentation by DHEERAJ KATARIA
C++ functions presentation by DHEERAJ KATARIAC++ functions presentation by DHEERAJ KATARIA
C++ functions presentation by DHEERAJ KATARIA
 
Pointers
PointersPointers
Pointers
 
C++ programming
C++ programmingC++ programming
C++ programming
 
Advanced C - Part 2
Advanced C - Part 2Advanced C - Part 2
Advanced C - Part 2
 
Unit 6 pointers
Unit 6   pointersUnit 6   pointers
Unit 6 pointers
 
Lecture 4
Lecture 4Lecture 4
Lecture 4
 
C++ Functions
C++ FunctionsC++ Functions
C++ Functions
 
CPP Language Basics - Reference
CPP Language Basics - ReferenceCPP Language Basics - Reference
CPP Language Basics - Reference
 
Functions in C++
Functions in C++Functions in C++
Functions in C++
 
18 dec pointers and scope resolution operator
18 dec pointers and scope resolution operator18 dec pointers and scope resolution operator
18 dec pointers and scope resolution operator
 

Similar to Ch7 C++

Part 3-functions1-120315220356-phpapp01
Part 3-functions1-120315220356-phpapp01Part 3-functions1-120315220356-phpapp01
Part 3-functions1-120315220356-phpapp01
Abdul Samee
 
ch5_additional.ppt
ch5_additional.pptch5_additional.ppt
ch5_additional.ppt
LokeshK66
 
Tugas praktikukm pemrograman c++
Tugas praktikukm  pemrograman c++Tugas praktikukm  pemrograman c++
Tugas praktikukm pemrograman c++
Dendi Riadi
 
how to reuse code
how to reuse codehow to reuse code
how to reuse code
jleed1
 
Start with the inclusion of libraries#include iostream .docx
 Start with the inclusion of libraries#include iostream .docx Start with the inclusion of libraries#include iostream .docx
Start with the inclusion of libraries#include iostream .docx
MARRY7
 

Similar to Ch7 C++ (20)

Part 3-functions1-120315220356-phpapp01
Part 3-functions1-120315220356-phpapp01Part 3-functions1-120315220356-phpapp01
Part 3-functions1-120315220356-phpapp01
 
ch5_additional.ppt
ch5_additional.pptch5_additional.ppt
ch5_additional.ppt
 
C++ L05-Functions
C++ L05-FunctionsC++ L05-Functions
C++ L05-Functions
 
functions of C++
functions of C++functions of C++
functions of C++
 
Tugas praktikukm pemrograman c++
Tugas praktikukm  pemrograman c++Tugas praktikukm  pemrograman c++
Tugas praktikukm pemrograman c++
 
Chapter 4
Chapter 4Chapter 4
Chapter 4
 
how to reuse code
how to reuse codehow to reuse code
how to reuse code
 
Lecture#7 Call by value and reference in c++
Lecture#7 Call by value and reference in c++Lecture#7 Call by value and reference in c++
Lecture#7 Call by value and reference in c++
 
Pointers in c++ programming presentation
Pointers in c++ programming presentationPointers in c++ programming presentation
Pointers in c++ programming presentation
 
Learn c++ (functions) with nauman ur rehman
Learn  c++ (functions) with nauman ur rehmanLearn  c++ (functions) with nauman ur rehman
Learn c++ (functions) with nauman ur rehman
 
w10 (1).ppt
w10 (1).pptw10 (1).ppt
w10 (1).ppt
 
C++ Programm.pptx
C++ Programm.pptxC++ Programm.pptx
C++ Programm.pptx
 
C++ Functions.ppt
C++ Functions.pptC++ Functions.ppt
C++ Functions.ppt
 
C++ Nested loops, matrix and fuctions.pdf
C++ Nested loops, matrix and fuctions.pdfC++ Nested loops, matrix and fuctions.pdf
C++ Nested loops, matrix and fuctions.pdf
 
C++ TUTORIAL 4
C++ TUTORIAL 4C++ TUTORIAL 4
C++ TUTORIAL 4
 
Start with the inclusion of libraries#include iostream .docx
 Start with the inclusion of libraries#include iostream .docx Start with the inclusion of libraries#include iostream .docx
Start with the inclusion of libraries#include iostream .docx
 
oop Lecture 4
oop Lecture 4oop Lecture 4
oop Lecture 4
 
Function C++
Function C++ Function C++
Function C++
 
Recursion to iteration automation.
Recursion to iteration automation.Recursion to iteration automation.
Recursion to iteration automation.
 
C++ TUTORIAL 3
C++ TUTORIAL 3C++ TUTORIAL 3
C++ TUTORIAL 3
 

Recently uploaded

Recently uploaded (20)

This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 

Ch7 C++

  • 1. // Functions that take no arguments #include <iostream> using namespace std; void function1(); void function2( void ); int main() { function1(); function2(); return 0; } void function1() { cout << "function1 takes no arguments" << endl; } void function2( void ) { cout << "function2 also takes no arguments" << endl; }
  • 2.
  • 3. Example #include <iostream> using namespace std; void printStars(); int main() { printStars(); //Line 1 cout << "********** Annual ***********" << endl; //Line 2 printStars(); //Line 3 cout << "******* Spring Sale **********" << endl; //Line 4 printStars(); //Line 5 return 0; } void printStars() { cout << "******************************" << endl; cout << "******************************" << endl; }
  • 4.
  • 5. solution #include<iostream> using namespace std; void square( int m ); // function prototype //it can be int square( int ); int main() { for ( int x = 1; x <= 10; x++ ) square( x ) ; //calling statement x is actual parameter cout << endl; return 0; } // Function definition void square( int y ) // Heading y is Formal Parameter { return y * y; // The return Statement }
  • 6. #include<iostream> using namespace std; void square( int m ); // function prototype //it can be int square( int ); int main() { for ( int x = 1; x <= 10; x++ ) square( x ) ; //calling statement x is actual parameter cout << endl; return 0; } // Function definition void square( int y ) // Heading y is Formal Parameter { cout<< y * y<<endl; // The return Statement }
  • 7.
  • 9. Modify (Value parameters) #include<iostream> using namespace std; void modify( int m ); // function prototype int main() { int x; x=7; cout<<"x befor calling modify function = "<<x<<endl; modify( x ) ; //calling statement x is actual parameter cout<<"x After calling modify function = "<<x<<endl; cout << endl; return 0; } // Function definition void modify( int y ) // Heading y is Formal Parameter { y=y+10; // The return Statement cout<<"y inside modify function = "<<y<<endl; }
  • 10.
  • 11. Reference parameters #include<iostream> using namespace std; void modify( int &m ); // function prototype int main() { int x; x=7; cout<<"x befor calling modify function = "<<x<<endl; modify( x ) ; //calling statement x is actual parameter cout<<"x After calling modify function = "<<x<<endl; cout << endl; return 0; } // Function definition void modify( int &y ) // Heading y is Formal Parameter { y=y+10; // The return Statement cout<<"y inside modify function = "<<y<<endl; }
  • 12.
  • 13. Reference // References must be initialized #include <iostream> using namespace std; int main() { int x = 3, &y = x; // y is now an alias for x cout << "x = " << x << endl << "y = " << y << endl; y = 7; cout << "x = " << x << endl << "y = " << y << endl; return 0; }
  • 14.
  • 15. // A scoping example #include <iostream> using namespace std; void a( ); // function prototype void b( ); // function prototype void c( void ); // function prototype int x = 1; // global variable int main() { int x = 5; // local variable to main cout << "local x in outer scope of main is " << x << endl; { // start new scope int x = 7; cout << "local x in inner scope of main is " << x << endl; } // end new scope cout << "globel x in outer scope of main is " << ::x << endl; cout << "local x in outer scope of main is " << x << endl; cout<<"*************************************************"<<endl; a(); // a has automatic local x b(); // b has static local x c(); // c uses global x cout<<"*************************************************"<<endl; cout<<"Afetr second calling"<<endl; a(); // a reinitializes automatic local x b(); // static local x retains its previous value c(); // global x also retains its value cout <<endl<< "local x in main is " << x <<endl<< endl; return 0; } 5 7 1 5 5
  • 16. void a( ) { int x = 25; // initialized each time a is called cout << endl << "local x in a is " << x << " after entering a" << endl; } void b( ) { static int x = 50; // Static initialization only // first time b is called. cout << endl << "local static x is " << x << " on entering b" << endl; x=x+2; } void c( void ) { cout << endl << "global x is " << x << " on entering c" << endl; x *= 10; } 25 50 in first call 10 after second call 1 25 in secon d call 52 in Second call call
  • 17.
  • 18. // Using overloaded functions // Using overloaded functions #include <iostream> using namespace std; int square( int x ); double square( double y ); int main() { cout << "The square of integer 7 is " << square( 7 )<<endl << "The square of double 7.5 is " << square( 7.5 ) << endl; return 0; } int square( int x ) { return x * x; } double square( double y ) { return y * y; }
  • 19.
  • 20. // Using default arguments // Using default arguments #include <iostream> using namespace std; int boxVolume( int length = 1, int width = 1, int height = 1 ); int main() { cout << "The default box volume is: " << boxVolume() <<endl; cout<< "width 1 and height 1 is: " << boxVolume( 10 ) << endl; cout << "width 5 and height 1 is: " << boxVolume( 10, 5 ) << endl; cout << "width 5 and height 2 is: " << boxVolume( 10, 5, 2 ) << endl; return 0; } // Calculate the volume of a box int boxVolume( int length, int width, int height ) { return length * width * height; }