SlideShare une entreprise Scribd logo
1  sur  24
1
Functions in C++
CHAPTER V
2
C++ Functions
 In this tutorial, we will learn about the C++ function and function expressions with the help
of examples.
 A function is a block of code that performs a specific task.
 Suppose we need to create a program to create a circle and color it. We can create two
functions to solve this problem:
 a function to draw the circle
 a function to color the circle
 Dividing a complex problem into smaller chunks makes our program easy to understand and
reusable.
 There are two types of function:
1. Standard Library Functions: Predefined in C++
2. User-defined Function: Created by users
In this C++ User-defined Function
 C++ allows the programmer to define their own function.
 A user-defined function groups code to perform a specific task and that group of code is given
a name (identifier).
 When the function is invoked from any part of the program, it all executes the codes defined
in the body of the function.
 tutorial, we will focus mostly on user-defined functions.
3
C++ Function Declaration
The syntax to declare a function is:
returnType functionName (parameter1, parameter2,...) {
// function body
}
Here's an example of a function declaration.
// function declaration
void greet() {
cout << "Hello World";
}
Here,
• the name of the function is greet()
• the return type of the function is void
• the empty parentheses mean it doesn't have any parameters
• the function body is written inside {}
Note: We will learn about returnType and parameters later in this tutorial.
4
Example 1: C++ if Statement
 // Program to print positive number entered by the user
 // If the user enters a negative number, it is skipped
#include <iostream>
using namespace std;
int main() {
int number;
cout << "Enter an integer: ";
cin >> number; // checks if the number is positive
if (number > 0) {
cout << "You entered a positive integer: " << number << endl;
}
cout << "This statement is always executed.";
return 0;
}
5
Calling a Function
In the above program, we have declared a function named greet(). To
use the greet() function, we need to call it.
Here's how we can call the above greet() function.
int main() {
// calling a function
greet();
}
6
Example 1: Display a Text
#include <iostream>
using namespace std;
// declaring a function
void greet() {
cout << "Hello there!";
}
int main() {
// calling the function
greet();
return 0;
}
Output
Hello there!
7
Function Parameters
As mentioned above, a function can be declared with parameters
(arguments). A parameter is a value that is passed when declaring a
function.
For example, let us consider the function below:
void printNum(int num) {
cout << num;
}
Here, the int variable num is the function parameter.
We pass a value to the function parameter while calling the function.
int main() {
int n = 7;
// calling the function
// n is passed to the function as argument
printNum(n);
return 0;
}
8
Example 2: Function with Parameters
// program to print a text
#include <iostream>
using namespace std;
// display a numbe
void displayNum(int n1, float n2) {
cout << "The int number is " << n1;
cout << "The double number is " << n2;
}
int main() {
int num1 = 5;
double num2 = 5.5;
// calling the function
displayNum(num1, num2);
return 0;
}
Output
The int number is 5
The double number is 5.5
9
• In the above program, we have used a function that has one int parameter and one double
parameter.
• We then pass num1 and num2 as arguments. These values are stored by the function
parameters n1 and n2 respectively.
Note: The type of the arguments passed while calling the function must
match with the corresponding parameters defined in the function
declaration.
10
Return Statement
• In the above programs, we have used void in the function declaration.
For example,
void displayNumber() { // code}
• This means the function is not returning any value.
• It's also possible to return a value from a function. For this, we need to
specify the returnType of the function during function declaration.
• Then, the return statement can be used to return a value from a function.
For example,
int add (int a, int b) {
return (a + b);
}
• Here, we have the data type int instead of void. This means that the
function returns an int value.
• The code return (a + b); returns the sum of the two parameters as the
function value.
• The return statement denotes that the function has ended. Any code after
return inside the function is not executed.
11
Example 3: Add Two Numbers
// program to add two numbers using a function
#include <iostream>
using namespace std;
// declaring a function
int add(int a, int b) {
return (a + b);
}
int main() {
int sum;
// calling the function and storing
// the returned value in sum
sum = add(100, 78);
cout << "100 + 78 = " << sum << endl;
return 0;
}
Output
100 + 78 = 178
12
• In the above program, the add() function is used to find the sum of two numbers.
• We pass two int literals 100 and 78 while calling the function.
• We store the returned value of the function in the variable sum, and then we print it.
Notice that sum is a variable of int type. This is because the return value of add() is of int type.
Function Prototype
• In C++, the code of function declaration should be before the function call.
• However, if we want to define a function after the function call, we need to use the
function prototype. For example,
// function prototype
void add(int, int);
int main() {
// calling the function before declaration.
add(5, 3);
return 0;
}
// function definition
void add(int a, int b) {
cout << (a + b);}
• In the above code, the function prototype is:
void add(int, int);
• This provides the compiler with information about the function name and its
parameters.
• That's why we can use the code to call a function before the function has been
defined.
• The syntax of a function prototype is:
returnType functionName(dataType1, dataType2, ...);
14
Example 4: C++ Function Prototype
// using function definition after main() function;// function prototype is declared before
main()
#include <iostream>using namespace std;
// function prototype
int add(int, int);
int main() {
int sum;
// calling the function and storing
// the returned value in sum
sum = add(100, 78);
cout << "100 + 78 = " << sum << endl;
return 0;
}
// function definition
int add(int a, int b) {
return (a + b);
}
Output
100 + 78 = 178
The above program is nearly identical to Example 3. The only difference is that here,
the function is defined after the function call.That's why we have used a function
15
Benefits of Using User-Defined Functions
• Functions make the code reusable. We can declare them once and use them multiple
times.
• Functions make the program easier as each small task is divided into a function.
• Functions increase readability.
C++ Library Functions
• Library functions are the built-in functions in C++ programming.
• Programmers can use library functions by invoking the functions directly; they don't
need to write the functions themselves.
• Some common library functions in C++ are sqrt(), abs(), isdigit(), etc.
• In order to use library functions, we usually need to include the header file in which
these library functions are defined.
• For instance, in order to use mathematical functions such as sqrt() and abs(), we need to
include the header file cmath.
16
Example 5: C++ Program to Find the Square Root of a Number
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double number,
squareRoot;
number = 25.0;
// sqrt() is a library function to calculate the square root
squareRoot = sqrt(number);
cout << "Square root of " << number << " = " << squareRoot;
return 0;
}
Output
Square root of 25 = 5
In this program, the sqrt() library function is used to calculate the square
root of a number.
The function declaration of sqrt() is defined in the cmath header file.
That's why we need to use the code #include <cmath> to use the sqrt() function.
17
C++ Function Overloading
• In this tutorial, we will learn about the function overloading in C++ with examples.
• In C++, two functions can have the same name if the number and/or type of
arguments passed is different.
• These functions having the same name but different arguments are known as
overloaded functions. For example:
// same name different arguments
int test() { }
int test(int a) { }
float test(double a) { }
int test(int a, double b) { }
• Here, all 4 functions are overloaded functions.
• Notice that the return types of all these 4 functions are not the same. Overloaded
functions may or may not have different return types but they must have different
arguments. For example,
// Error code
int test(int a) { }
double test(int b){ }
• Here, both functions have the same name, the same type, and the same number of
arguments. Hence, the compiler will throw an error.
18
Example 1: Overloading Using Different Types of Parameter
// Program to compute absolute value// Works for both int and float
#include <iostream>
using namespace std;
// function with float type parameter
float absolute(float var){
if (var < 0.0)
var = -var;
return var;
}
// function with int type parameter
int absolute(int var) {
if (var < 0)
var = -var;
return var;
}
int main() {
// call function with int type parameter
cout << "Absolute value of -5 = " << absolute(-5) << endl;
// call function with float type parameter
cout << "Absolute value of 5.5 = " << absolute(5.5f) << endl;
return 0;
}
Output
Absolute value of -5 = 5; Absolute value of 5.5 = 5.5
19
• In this program, we overload the absolute() function. Based on the
type of parameter passed during the function call, the corresponding
function is called.
20
Example 2: Overloading Using Different Number of Parameters
#include <iostream>
using namespace std;
// function with 2 parameters
void display(int var1, double var2) {
cout << "Integer number: " << var1;
cout << " and double number: " << var2 << endl;
}
// function with double type single parameter
void display(double var) {
cout << "Double number: " << var << endl;
}
// function with int type single parameter
void display(int var) {
cout << "Integer number: " << var << endl;
}
int main() {
int a = 5; double b = 5.5;
// call function with int type parameter
display(a);
// call function with double type parameter
display(b);
// call function with 2 parameters
display(a, b);
return 0;
}
Output
Integer number: 5; Float number: 5.5; Integer number: 5 ; and double number: 5.5
21
• Here, the display() function is called three times with different arguments. Depending on the
number and type of arguments passed, the corresponding display() function is called.
• The return type of all these functions is the same but that need not be the case for function
overloading.
22
C++ Storage Class
In this article, you'll learn about different storage classes in C++.
Namely: local, global, static local, register and thread local.
Every variable in C++ has two features: type and storage class.
Type specifies the type of data that can be stored in a variable. For
example: int, float, char etc.
And, storage class controls two different properties of a variable:
lifetime (determines how long a variable can exist) and scope
(determines which part of the program can access it).
Depending upon the storage class of a variable, it can be divided into
4 major types:
•Local variable
•Global variable
•Static local variable
•Register Variable
•Thread Local Storage
1. Local Variable
 A variable defined inside a function (defined inside function body between braces) is called a local
variable or automatic variable.
 Its scope is only limited to the function where it is defined. In simple terms, local variable exists and can
be accessed only inside a function.
 The life of a local variable ends (It is destroyed) when the function exits.
Example 1: Local variable
#include <iostream>
using namespace std;
void test();
int main() {
// local variable to main()
int var = 5;
test();
// illegal: var1 not declared inside main()
var1 = 9;
}
void test(){
// local variable to test()
int var1;
var1 = 6;
// illegal: var not declared inside test()
cout << var;
}
The variable var cannot be used inside test() and var1 cannot be used inside main() function.
24
2. Global Variable
• If a variable is defined outside all functions, then it is called a global variable.
• The scope of a global variable is the whole program. This means, It can be used and changed at any part
of the program after its declaration.
• Likewise, its life ends only when the program ends.
Example 2: Global variable
#include <iostream>
using namespace std;
// Global variable declaration
int c = 12;
void test();
int main(){
++c;
// Outputs 13
cout << c <<endl;
test();
return 0;
}
void test(){
++c;
// Outputs 14
cout << c;
}
Output
13 14
In the above program, c is a global variable.
This variable is visible to both functions main() and test() in the above program.

Contenu connexe

Tendances

C++ Programming Language
C++ Programming Language C++ Programming Language
C++ Programming Language Mohamed Loey
 
Getting started in c++
Getting started in c++Getting started in c++
Getting started in c++Neeru Mittal
 
Lecture#9 Arrays in c++
Lecture#9 Arrays in c++Lecture#9 Arrays in c++
Lecture#9 Arrays in c++NUST Stuff
 
Basics of c++ Programming Language
Basics of c++ Programming LanguageBasics of c++ Programming Language
Basics of c++ Programming LanguageAhmad Idrees
 
Python Unit 3 - Control Flow and Functions
Python Unit 3 - Control Flow and FunctionsPython Unit 3 - Control Flow and Functions
Python Unit 3 - Control Flow and FunctionsDhivyaSubramaniyam
 
Python unit 2 as per Anna university syllabus
Python unit 2 as per Anna university syllabusPython unit 2 as per Anna university syllabus
Python unit 2 as per Anna university syllabusDhivyaSubramaniyam
 
46630497 fun-pointer-1
46630497 fun-pointer-146630497 fun-pointer-1
46630497 fun-pointer-1AmIt Prasad
 
Input processing and output in Python
Input processing and output in PythonInput processing and output in Python
Input processing and output in PythonRaajendra M
 
Cs1123 3 c++ overview
Cs1123 3 c++ overviewCs1123 3 c++ overview
Cs1123 3 c++ overviewTAlha MAlik
 
USER DEFINE FUNCTIONS IN PYTHON[WITH PARAMETERS]
USER DEFINE FUNCTIONS IN PYTHON[WITH PARAMETERS]USER DEFINE FUNCTIONS IN PYTHON[WITH PARAMETERS]
USER DEFINE FUNCTIONS IN PYTHON[WITH PARAMETERS]vikram mahendra
 
Operators and Control Statements in Python
Operators and Control Statements in PythonOperators and Control Statements in Python
Operators and Control Statements in PythonRajeswariA8
 
03. Operators Expressions and statements
03. Operators Expressions and statements03. Operators Expressions and statements
03. Operators Expressions and statementsIntro C# Book
 

Tendances (20)

C++ Language
C++ LanguageC++ Language
C++ Language
 
C++ Programming Language
C++ Programming Language C++ Programming Language
C++ Programming Language
 
Intro to c++
Intro to c++Intro to c++
Intro to c++
 
Getting started in c++
Getting started in c++Getting started in c++
Getting started in c++
 
Lecture#9 Arrays in c++
Lecture#9 Arrays in c++Lecture#9 Arrays in c++
Lecture#9 Arrays in c++
 
Basics of c++ Programming Language
Basics of c++ Programming LanguageBasics of c++ Programming Language
Basics of c++ Programming Language
 
Python Unit 3 - Control Flow and Functions
Python Unit 3 - Control Flow and FunctionsPython Unit 3 - Control Flow and Functions
Python Unit 3 - Control Flow and Functions
 
C++ Overview PPT
C++ Overview PPTC++ Overview PPT
C++ Overview PPT
 
Python unit 2 as per Anna university syllabus
Python unit 2 as per Anna university syllabusPython unit 2 as per Anna university syllabus
Python unit 2 as per Anna university syllabus
 
46630497 fun-pointer-1
46630497 fun-pointer-146630497 fun-pointer-1
46630497 fun-pointer-1
 
Input processing and output in Python
Input processing and output in PythonInput processing and output in Python
Input processing and output in Python
 
Advanced C - Part 2
Advanced C - Part 2Advanced C - Part 2
Advanced C - Part 2
 
C++ programming
C++ programmingC++ programming
C++ programming
 
Cs1123 3 c++ overview
Cs1123 3 c++ overviewCs1123 3 c++ overview
Cs1123 3 c++ overview
 
USER DEFINE FUNCTIONS IN PYTHON[WITH PARAMETERS]
USER DEFINE FUNCTIONS IN PYTHON[WITH PARAMETERS]USER DEFINE FUNCTIONS IN PYTHON[WITH PARAMETERS]
USER DEFINE FUNCTIONS IN PYTHON[WITH PARAMETERS]
 
Operators and Control Statements in Python
Operators and Control Statements in PythonOperators and Control Statements in Python
Operators and Control Statements in Python
 
C++
C++C++
C++
 
03. Operators Expressions and statements
03. Operators Expressions and statements03. Operators Expressions and statements
03. Operators Expressions and statements
 
Introduction to c++
Introduction to c++Introduction to c++
Introduction to c++
 
DATA TYPE IN PYTHON
DATA TYPE IN PYTHONDATA TYPE IN PYTHON
DATA TYPE IN PYTHON
 

Similaire à Chap 5 c++

Function in C++, Methods in C++ coding programming
Function in C++, Methods in C++ coding programmingFunction in C++, Methods in C++ coding programming
Function in C++, Methods in C++ coding programmingestorebackupr
 
Functions IN CPROGRAMMING OF ENGINEERING.pptx
Functions IN CPROGRAMMING OF ENGINEERING.pptxFunctions IN CPROGRAMMING OF ENGINEERING.pptx
Functions IN CPROGRAMMING OF ENGINEERING.pptxvanshhans21102005
 
unit3 part2 pcds function notes.pdf
unit3 part2 pcds function notes.pdfunit3 part2 pcds function notes.pdf
unit3 part2 pcds function notes.pdfJAVVAJI VENKATA RAO
 
C++ Functions.pptx
C++ Functions.pptxC++ Functions.pptx
C++ Functions.pptxDikshaDani5
 
Presentation 2 (1).pdf
Presentation 2 (1).pdfPresentation 2 (1).pdf
Presentation 2 (1).pdfziyadaslanbey
 
16717 functions in C++
16717 functions in C++16717 functions in C++
16717 functions in C++LPU
 
CHAPTER THREE FUNCTION.pptx
CHAPTER THREE FUNCTION.pptxCHAPTER THREE FUNCTION.pptx
CHAPTER THREE FUNCTION.pptxGebruGetachew2
 
Functions in C++ programming language.pptx
Functions in  C++ programming language.pptxFunctions in  C++ programming language.pptx
Functions in C++ programming language.pptxrebin5725
 
Amit user defined functions xi (2)
Amit  user defined functions xi (2)Amit  user defined functions xi (2)
Amit user defined functions xi (2)Arpit Meena
 

Similaire à Chap 5 c++ (20)

unit_2.pptx
unit_2.pptxunit_2.pptx
unit_2.pptx
 
Lecture 4
Lecture 4Lecture 4
Lecture 4
 
unit_2 (1).pptx
unit_2 (1).pptxunit_2 (1).pptx
unit_2 (1).pptx
 
Function in C++, Methods in C++ coding programming
Function in C++, Methods in C++ coding programmingFunction in C++, Methods in C++ coding programming
Function in C++, Methods in C++ coding programming
 
Functions IN CPROGRAMMING OF ENGINEERING.pptx
Functions IN CPROGRAMMING OF ENGINEERING.pptxFunctions IN CPROGRAMMING OF ENGINEERING.pptx
Functions IN CPROGRAMMING OF ENGINEERING.pptx
 
C++ Functions.ppt
C++ Functions.pptC++ Functions.ppt
C++ Functions.ppt
 
unit3 part2 pcds function notes.pdf
unit3 part2 pcds function notes.pdfunit3 part2 pcds function notes.pdf
unit3 part2 pcds function notes.pdf
 
C++ Functions.pptx
C++ Functions.pptxC++ Functions.pptx
C++ Functions.pptx
 
Chapter 1.ppt
Chapter 1.pptChapter 1.ppt
Chapter 1.ppt
 
Presentation 2 (1).pdf
Presentation 2 (1).pdfPresentation 2 (1).pdf
Presentation 2 (1).pdf
 
16717 functions in C++
16717 functions in C++16717 functions in C++
16717 functions in C++
 
CHAPTER THREE FUNCTION.pptx
CHAPTER THREE FUNCTION.pptxCHAPTER THREE FUNCTION.pptx
CHAPTER THREE FUNCTION.pptx
 
PSPC-UNIT-4.pdf
PSPC-UNIT-4.pdfPSPC-UNIT-4.pdf
PSPC-UNIT-4.pdf
 
arrays.ppt
arrays.pptarrays.ppt
arrays.ppt
 
Functions in C++ programming language.pptx
Functions in  C++ programming language.pptxFunctions in  C++ programming language.pptx
Functions in C++ programming language.pptx
 
Functions in C++.pdf
Functions in C++.pdfFunctions in C++.pdf
Functions in C++.pdf
 
Unit 3 (1)
Unit 3 (1)Unit 3 (1)
Unit 3 (1)
 
Functions
FunctionsFunctions
Functions
 
User Defined Functions
User Defined FunctionsUser Defined Functions
User Defined Functions
 
Amit user defined functions xi (2)
Amit  user defined functions xi (2)Amit  user defined functions xi (2)
Amit user defined functions xi (2)
 

Dernier

Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdfssuserdda66b
 
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.pptxDenish Jangid
 
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Ữ Â...Nguyen Thanh Tu Collection
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.MaryamAhmad92
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the ClassroomPooky Knightsmith
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseAnaAcapella
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.pptRamjanShidvankar
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxDr. Sarita Anand
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin ClassesCeline George
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxJisc
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 

Dernier (20)

Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdfVishram Singh - Textbook of Anatomy  Upper Limb and Thorax.. Volume 1 (1).pdf
Vishram Singh - Textbook of Anatomy Upper Limb and Thorax.. Volume 1 (1).pdf
 
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
 
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
 
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Ữ Â...
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 

Chap 5 c++

  • 2. 2 C++ Functions  In this tutorial, we will learn about the C++ function and function expressions with the help of examples.  A function is a block of code that performs a specific task.  Suppose we need to create a program to create a circle and color it. We can create two functions to solve this problem:  a function to draw the circle  a function to color the circle  Dividing a complex problem into smaller chunks makes our program easy to understand and reusable.  There are two types of function: 1. Standard Library Functions: Predefined in C++ 2. User-defined Function: Created by users In this C++ User-defined Function  C++ allows the programmer to define their own function.  A user-defined function groups code to perform a specific task and that group of code is given a name (identifier).  When the function is invoked from any part of the program, it all executes the codes defined in the body of the function.  tutorial, we will focus mostly on user-defined functions.
  • 3. 3 C++ Function Declaration The syntax to declare a function is: returnType functionName (parameter1, parameter2,...) { // function body } Here's an example of a function declaration. // function declaration void greet() { cout << "Hello World"; } Here, • the name of the function is greet() • the return type of the function is void • the empty parentheses mean it doesn't have any parameters • the function body is written inside {} Note: We will learn about returnType and parameters later in this tutorial.
  • 4. 4 Example 1: C++ if Statement  // Program to print positive number entered by the user  // If the user enters a negative number, it is skipped #include <iostream> using namespace std; int main() { int number; cout << "Enter an integer: "; cin >> number; // checks if the number is positive if (number > 0) { cout << "You entered a positive integer: " << number << endl; } cout << "This statement is always executed."; return 0; }
  • 5. 5 Calling a Function In the above program, we have declared a function named greet(). To use the greet() function, we need to call it. Here's how we can call the above greet() function. int main() { // calling a function greet(); }
  • 6. 6 Example 1: Display a Text #include <iostream> using namespace std; // declaring a function void greet() { cout << "Hello there!"; } int main() { // calling the function greet(); return 0; } Output Hello there!
  • 7. 7 Function Parameters As mentioned above, a function can be declared with parameters (arguments). A parameter is a value that is passed when declaring a function. For example, let us consider the function below: void printNum(int num) { cout << num; } Here, the int variable num is the function parameter. We pass a value to the function parameter while calling the function. int main() { int n = 7; // calling the function // n is passed to the function as argument printNum(n); return 0; }
  • 8. 8 Example 2: Function with Parameters // program to print a text #include <iostream> using namespace std; // display a numbe void displayNum(int n1, float n2) { cout << "The int number is " << n1; cout << "The double number is " << n2; } int main() { int num1 = 5; double num2 = 5.5; // calling the function displayNum(num1, num2); return 0; } Output The int number is 5 The double number is 5.5
  • 9. 9 • In the above program, we have used a function that has one int parameter and one double parameter. • We then pass num1 and num2 as arguments. These values are stored by the function parameters n1 and n2 respectively. Note: The type of the arguments passed while calling the function must match with the corresponding parameters defined in the function declaration.
  • 10. 10 Return Statement • In the above programs, we have used void in the function declaration. For example, void displayNumber() { // code} • This means the function is not returning any value. • It's also possible to return a value from a function. For this, we need to specify the returnType of the function during function declaration. • Then, the return statement can be used to return a value from a function. For example, int add (int a, int b) { return (a + b); } • Here, we have the data type int instead of void. This means that the function returns an int value. • The code return (a + b); returns the sum of the two parameters as the function value. • The return statement denotes that the function has ended. Any code after return inside the function is not executed.
  • 11. 11 Example 3: Add Two Numbers // program to add two numbers using a function #include <iostream> using namespace std; // declaring a function int add(int a, int b) { return (a + b); } int main() { int sum; // calling the function and storing // the returned value in sum sum = add(100, 78); cout << "100 + 78 = " << sum << endl; return 0; } Output 100 + 78 = 178
  • 12. 12 • In the above program, the add() function is used to find the sum of two numbers. • We pass two int literals 100 and 78 while calling the function. • We store the returned value of the function in the variable sum, and then we print it. Notice that sum is a variable of int type. This is because the return value of add() is of int type.
  • 13. Function Prototype • In C++, the code of function declaration should be before the function call. • However, if we want to define a function after the function call, we need to use the function prototype. For example, // function prototype void add(int, int); int main() { // calling the function before declaration. add(5, 3); return 0; } // function definition void add(int a, int b) { cout << (a + b);} • In the above code, the function prototype is: void add(int, int); • This provides the compiler with information about the function name and its parameters. • That's why we can use the code to call a function before the function has been defined. • The syntax of a function prototype is: returnType functionName(dataType1, dataType2, ...);
  • 14. 14 Example 4: C++ Function Prototype // using function definition after main() function;// function prototype is declared before main() #include <iostream>using namespace std; // function prototype int add(int, int); int main() { int sum; // calling the function and storing // the returned value in sum sum = add(100, 78); cout << "100 + 78 = " << sum << endl; return 0; } // function definition int add(int a, int b) { return (a + b); } Output 100 + 78 = 178 The above program is nearly identical to Example 3. The only difference is that here, the function is defined after the function call.That's why we have used a function
  • 15. 15 Benefits of Using User-Defined Functions • Functions make the code reusable. We can declare them once and use them multiple times. • Functions make the program easier as each small task is divided into a function. • Functions increase readability. C++ Library Functions • Library functions are the built-in functions in C++ programming. • Programmers can use library functions by invoking the functions directly; they don't need to write the functions themselves. • Some common library functions in C++ are sqrt(), abs(), isdigit(), etc. • In order to use library functions, we usually need to include the header file in which these library functions are defined. • For instance, in order to use mathematical functions such as sqrt() and abs(), we need to include the header file cmath.
  • 16. 16 Example 5: C++ Program to Find the Square Root of a Number #include <iostream> #include <cmath> using namespace std; int main() { double number, squareRoot; number = 25.0; // sqrt() is a library function to calculate the square root squareRoot = sqrt(number); cout << "Square root of " << number << " = " << squareRoot; return 0; } Output Square root of 25 = 5 In this program, the sqrt() library function is used to calculate the square root of a number. The function declaration of sqrt() is defined in the cmath header file. That's why we need to use the code #include <cmath> to use the sqrt() function.
  • 17. 17 C++ Function Overloading • In this tutorial, we will learn about the function overloading in C++ with examples. • In C++, two functions can have the same name if the number and/or type of arguments passed is different. • These functions having the same name but different arguments are known as overloaded functions. For example: // same name different arguments int test() { } int test(int a) { } float test(double a) { } int test(int a, double b) { } • Here, all 4 functions are overloaded functions. • Notice that the return types of all these 4 functions are not the same. Overloaded functions may or may not have different return types but they must have different arguments. For example, // Error code int test(int a) { } double test(int b){ } • Here, both functions have the same name, the same type, and the same number of arguments. Hence, the compiler will throw an error.
  • 18. 18 Example 1: Overloading Using Different Types of Parameter // Program to compute absolute value// Works for both int and float #include <iostream> using namespace std; // function with float type parameter float absolute(float var){ if (var < 0.0) var = -var; return var; } // function with int type parameter int absolute(int var) { if (var < 0) var = -var; return var; } int main() { // call function with int type parameter cout << "Absolute value of -5 = " << absolute(-5) << endl; // call function with float type parameter cout << "Absolute value of 5.5 = " << absolute(5.5f) << endl; return 0; } Output Absolute value of -5 = 5; Absolute value of 5.5 = 5.5
  • 19. 19 • In this program, we overload the absolute() function. Based on the type of parameter passed during the function call, the corresponding function is called.
  • 20. 20 Example 2: Overloading Using Different Number of Parameters #include <iostream> using namespace std; // function with 2 parameters void display(int var1, double var2) { cout << "Integer number: " << var1; cout << " and double number: " << var2 << endl; } // function with double type single parameter void display(double var) { cout << "Double number: " << var << endl; } // function with int type single parameter void display(int var) { cout << "Integer number: " << var << endl; } int main() { int a = 5; double b = 5.5; // call function with int type parameter display(a); // call function with double type parameter display(b); // call function with 2 parameters display(a, b); return 0; } Output Integer number: 5; Float number: 5.5; Integer number: 5 ; and double number: 5.5
  • 21. 21 • Here, the display() function is called three times with different arguments. Depending on the number and type of arguments passed, the corresponding display() function is called. • The return type of all these functions is the same but that need not be the case for function overloading.
  • 22. 22 C++ Storage Class In this article, you'll learn about different storage classes in C++. Namely: local, global, static local, register and thread local. Every variable in C++ has two features: type and storage class. Type specifies the type of data that can be stored in a variable. For example: int, float, char etc. And, storage class controls two different properties of a variable: lifetime (determines how long a variable can exist) and scope (determines which part of the program can access it). Depending upon the storage class of a variable, it can be divided into 4 major types: •Local variable •Global variable •Static local variable •Register Variable •Thread Local Storage
  • 23. 1. Local Variable  A variable defined inside a function (defined inside function body between braces) is called a local variable or automatic variable.  Its scope is only limited to the function where it is defined. In simple terms, local variable exists and can be accessed only inside a function.  The life of a local variable ends (It is destroyed) when the function exits. Example 1: Local variable #include <iostream> using namespace std; void test(); int main() { // local variable to main() int var = 5; test(); // illegal: var1 not declared inside main() var1 = 9; } void test(){ // local variable to test() int var1; var1 = 6; // illegal: var not declared inside test() cout << var; } The variable var cannot be used inside test() and var1 cannot be used inside main() function.
  • 24. 24 2. Global Variable • If a variable is defined outside all functions, then it is called a global variable. • The scope of a global variable is the whole program. This means, It can be used and changed at any part of the program after its declaration. • Likewise, its life ends only when the program ends. Example 2: Global variable #include <iostream> using namespace std; // Global variable declaration int c = 12; void test(); int main(){ ++c; // Outputs 13 cout << c <<endl; test(); return 0; } void test(){ ++c; // Outputs 14 cout << c; } Output 13 14 In the above program, c is a global variable. This variable is visible to both functions main() and test() in the above program.