SlideShare a Scribd company logo
1 of 27
OObbjjeecctt oorriieenntteedd PPrrooggrraammmmiinngg 
wwiitthh CC++++ 
MMaanniippuullaattiinngg SSttrriinnggss 
By 
Nilesh Dalvi 
LLeeccttuurreerr,, PPaattkkaarr--VVaarrddee CCoolllleeggee.. 
http://www.slideshare.net/nileshdalvi01
Introduction 
• A string is a sequence of characters. 
• Strings can contain small and capital letters, 
numbers and symbols. 
• Each element of string occupies a byte in the 
memory. 
• Every string is terminated by a null 
character(‘0’). 
• Its ASCII and Hex values are zero. 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
Introduction 
• The string is stored in the memory as follows: 
char country [6] = "INDIA"; 
I N D I A '0' 
73 78 68 73 65 00 
• Each character occupies a single byte in 
memory as shown above. 
• The various operations with strings such as 
copying, comparing, concatenation, or 
replacing requires a lot of effort in ‘C’ 
programming. 
• These string is called as C-style string. 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
String library functions 
Functions Description 
strlen() Determines length of string. 
strcpy() Copies a string from source to destination 
strcmp() Compares characters of two strings. 
stricmp() Compares two strings. 
strlwr() Converts uppercase characters in strings to lowercase 
strupr() Converts lowercase characters in strings to uppercase 
strdup() Duplicates a string 
strchr() Determines first occurrence of given character in a string 
strcat() Appends source string to destination string 
strrev() Reversing all characters of a string 
strspn() finds up at what length two strings are identical 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
Program explains above functions 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
#include <iostream> 
#include <string> 
using namespace std; 
int main() 
{ 
char name[10]; 
cout << "Enter name: " << endl; 
cin >> name; 
cout << "Length :" << strlen (name)<< endl; 
cout << "Reverse :" << strrev (name)<< endl; 
return 0; 
} 
Output: 
Enter name: 
ABC 
Length :3 
Reverse :CBA
Moving from C-String to C++String 
• Manipulation of string in the form of char 
array requires more effort, C uses library 
functions defined in string.h. 
• To make manipulation easy ANSI committee 
added a new class called string. 
• It allows us to define objects of string type 
and they can e used as built in data type. 
• The programmer should include the 
string header file. 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
Declaring and initializing string objects 
• In C, we declare strings as given below: 
char name[10]; 
• Whereas in C++ string is declared as an 
object. 
• The string object declaration and 
initialization can be done at once using 
constructor in string class. 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
String constructors 
Constructors Meaning 
string (); Produces an empty string 
string (const char * text); Produces a string object from a 
null ended string 
string (const string & text); Produces a string object from 
other string objects 
We can declare and initialize string objects as follows: 
string text; // Declaration of string objects 
//using construtor without argument 
string text("C++"); //using construtor with one argument 
text1 = text2; //Asssignment of two string objects 
text = "C++"+ text1; //Concatenation of two strings objects 
Nilesh Dalvi, Lecturer@Patkar-Varde College, 
Goregaon(W).
Performing assignment and concatenation 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
#include <iostream> 
#include <string> 
using namespace std; 
int main() 
{ 
string text; 
string text1(" C++"); 
string text2(" OOP"); 
cout << "text1 : "<< text1 << endl; 
cout << "text2 : "<< text2 << endl; 
text = text1; // assignment operation 
text = text1 + text2; // concatenation 
cout << "Now text : "<<text << endl; 
return 0; 
} 
Output: 
text1 : C++ 
text2 : OOP 
Now text : C++ OOP
String manipulating functions 
Functions Description 
append() Adds one string at the end of another string 
assign() Assigns a specified part of string 
at() Access a characters located at given location 
begin() returns a reference to the beginning of a string 
capacity() calculates the total elements that can be stored 
compare() compares two strings 
empty() returns false if the string is not empty, otherwise true 
end() returns a reference to the termination of string 
erase() erases the specified character 
find() finds the given sub string in the source string 
insert() inserts a character at the given location 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
String manipulating functions 
Functions Description 
length() calculates the total number of elements in string 
replace() substitutes the specified character with the given string 
resize() modifies the size of the string as specified 
size() provides the number of character n the string 
swap() Exchanges the given string with another string 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
String Relational Operators 
Operator Working 
= Assignment 
+ joining two or more strings 
+= concatenation and assignment 
== Equality 
!= Not equal to 
< Less than 
<= Less than or equal 
> Greater than 
>= Greater than or equal 
[] Subscription 
<< insertion 
>> Extraction 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
Comparing two strings using operators 
#include<iostream> 
#include<string> 
using namespace std; 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
int main() 
{ 
string s1("OOP"); 
string s2("OOP"); 
if(s1 == s2) 
cout << "n Both strings are identical"; 
else 
cout << "n Both strings are different"; 
return 0; 
}
Comparing two strings using compare() 
#include<iostream> 
#include<string> 
using namespace std; 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
int main() 
{ 
string s1("abd"); 
string s2("abc"); 
int d = s1.compare (s2); 
if(d == 0) 
cout << "n Both strings are identical"; 
else if(d > 0) 
cout << "n s1 is greater than s2"; 
else 
cout << "n s2 is greater than s1"; 
return 0; 
}
Inserting string using insert() 
#include<iostream> 
#include<string> 
using namespace std; 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
int main() 
{ 
string s1("abcpqr"); 
string s2("mno"); 
cout << "S1: " << s1 << endl; 
cout << "S2: " << s2 << endl; 
cout << "After Insertion: " << endl; 
s1.insert(3,s2); 
cout << "S1: " << s1 << endl; 
cout << "S2: " << s2 << endl; 
return 0; 
} 
Output :: 
S1: abcpqr 
S2: mno 
After Insertion: 
S1: abcmnopqr 
S2: mno
Remove specified character s using erase() 
#include<iostream> 
#include<string> 
using namespace std; 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
int main() 
{ 
string s1("abc1234pqr"); 
cout << "S1: " << s1 << endl; 
cout << "After Erase : " << endl; 
s1.erase(3,5); 
cout << "S1: " << s1 << endl; 
return 0; 
} 
Output : 
S1: abc1234pqr 
After Erase : 
S1: abcqr
String Attributes: size() 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
#include<iostream> 
#include<string> 
using namespace std; 
int main() 
{ 
string s1; 
cout << "Size : " << s1.size () << endl; 
s1 = "abc"; 
cout << "Size : " << s1.size () << endl; 
return 0; 
} 
Output :: 
Size : 0 
Size : 3
String Attributes: length() 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
#include<iostream> 
#include<string> 
using namespace std; 
int main() 
{ 
//length () : determines the length i.e. no. of characters 
string s1; 
cout << "Length : " << s1.length () << endl; 
s1 = "hello"; 
cout << "Length : " << s1.length () << endl; 
return 0; 
} 
Output :: 
Length : 0 
Length : 5
String Attributes: capacity() 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
#include<iostream> 
#include<string> 
using namespace std; 
int main() 
{ 
//capacity () : determines capacity of string object 
// i.e. no. of characters it can hold. 
string s1; 
cout << "Capacity : " << s1.capacity () << endl; 
s1 = "hello"; 
cout << "Capacity : " << s1.capacity () << endl; 
s1 = "abcdefghijklmnopqr"; 
cout << "Capacity : " << s1.capacity () << endl; 
return 0; 
} 
Output : 
Capacity : 15 
Capacity : 15 
Capacity : 31
String Attributes: empty() 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
#include<iostream> 
#include<string> 
using namespace std; 
int main() 
{ 
string s1; 
cout << "Empty : " <<( s1.empty ()? "True" : "False") << endl; 
s1 = "hello"; 
cout << "Empty : " <<( s1.empty ()? "True" : "False") << endl; 
return 0; 
}
Accessing elements of string : at() 
#include<iostream> 
#include<string> 
using namespace std; 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
int main() 
{ 
string s1("abcdefghijkl"); 
for(int i = 0; i < s1.length (); i++) 
cout << s1.at(i); // using at() 
for(int i = 0; i < s1.length (); i++) 
cout << s1. [i]; // using operator [] 
return 0; 
}
Accessing elements of string : find() 
#include<iostream> 
#include<string> 
using namespace std; 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
int main() 
{ 
string s1("TechTalks : Where everything is out of box!"); 
int x = s1.find ("box"); 
cout << "box is found at " << x << endl; 
return 0; 
} 
Output :: 
box is found at 39
Exchanging content of two strings: swap() 
#include<iostream> 
#include<string> 
using namespace std; 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
int main() 
{ 
string s1("ttt"); 
string s2("rrr"); 
cout << "S1 :" << s1 << endl; 
cout << "S2 :" << s2 << endl; 
s1.swap (s2); 
cout << "S1 :" << s1 << endl; 
cout << "S2 :" << s2 << endl; 
return 0; 
} 
Output : 
S1 :ttt 
S2 :rrr 
S1 :rrr 
S2 :ttt
Miscellaneous functions: assign() 
#include<iostream> 
#include<string> 
using namespace std; 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). 
int main() 
{ 
string s1("c plus plus"); 
string s2; 
s2.assign (s1, 0,6); 
cout << s2; 
return 0; 
} 
Output : 
c plus
Miscellaneous functions: begin() 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
Miscellaneous functions: end() 
Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
Object oriented Programming with C++ Manipulating Strings

More Related Content

What's hot (20)

Python programming : Strings
Python programming : StringsPython programming : Strings
Python programming : Strings
 
Pointers in c - Mohammad Salman
Pointers in c - Mohammad SalmanPointers in c - Mohammad Salman
Pointers in c - Mohammad Salman
 
Union in C programming
Union in C programmingUnion in C programming
Union in C programming
 
C Pointers
C PointersC Pointers
C Pointers
 
Function in c
Function in cFunction in c
Function in c
 
Strings in c++
Strings in c++Strings in c++
Strings in c++
 
Pointers in c language
Pointers in c languagePointers in c language
Pointers in c language
 
Python strings
Python stringsPython strings
Python strings
 
C functions
C functionsC functions
C functions
 
Managing input and output operation in c
Managing input and output operation in cManaging input and output operation in c
Managing input and output operation in c
 
Strings
StringsStrings
Strings
 
Union in c language
Union  in c languageUnion  in c language
Union in c language
 
Pointer in c
Pointer in cPointer in c
Pointer in c
 
String C Programming
String C ProgrammingString C Programming
String C Programming
 
Arrays in c
Arrays in cArrays in c
Arrays in c
 
Strings Functions in C Programming
Strings Functions in C ProgrammingStrings Functions in C Programming
Strings Functions in C Programming
 
Templates in C++
Templates in C++Templates in C++
Templates in C++
 
Input and output in C++
Input and output in C++Input and output in C++
Input and output in C++
 
Inline function
Inline functionInline function
Inline function
 
Memory allocation in c
Memory allocation in cMemory allocation in c
Memory allocation in c
 

Viewers also liked (20)

String in c
String in cString in c
String in c
 
C programming - String
C programming - StringC programming - String
C programming - String
 
Strings
StringsStrings
Strings
 
String c
String cString c
String c
 
C programming string
C  programming stringC  programming string
C programming string
 
String in programming language in c or c++
 String in programming language  in c or c++  String in programming language  in c or c++
String in programming language in c or c++
 
Implementation of c string functions
Implementation of c string functionsImplementation of c string functions
Implementation of c string functions
 
File handling
File handlingFile handling
File handling
 
String Handling in c++
String Handling in c++String Handling in c++
String Handling in c++
 
Computer Programming- Lecture 5
Computer Programming- Lecture 5 Computer Programming- Lecture 5
Computer Programming- Lecture 5
 
file handling c++
file handling c++file handling c++
file handling c++
 
String functions in C
String functions in CString functions in C
String functions in C
 
Array in c language
Array in c languageArray in c language
Array in c language
 
INTRODUCTION TO C PROGRAMMING
INTRODUCTION TO C PROGRAMMINGINTRODUCTION TO C PROGRAMMING
INTRODUCTION TO C PROGRAMMING
 
Handling Exceptions In C &amp; C++ [Part B] Ver 2
Handling Exceptions In C &amp; C++ [Part B] Ver 2Handling Exceptions In C &amp; C++ [Part B] Ver 2
Handling Exceptions In C &amp; C++ [Part B] Ver 2
 
05 c++-strings
05 c++-strings05 c++-strings
05 c++-strings
 
7. Multithreading
7. Multithreading7. Multithreading
7. Multithreading
 
Polymorphism
PolymorphismPolymorphism
Polymorphism
 
Structures,pointers and strings in c Programming
Structures,pointers and strings in c ProgrammingStructures,pointers and strings in c Programming
Structures,pointers and strings in c Programming
 
14. Linked List
14. Linked List14. Linked List
14. Linked List
 

Similar to Object oriented Programming with C++ Manipulating Strings

Standard Template Library
Standard Template LibraryStandard Template Library
Standard Template LibraryNilesh Dalvi
 
Operator Overloading
Operator OverloadingOperator Overloading
Operator OverloadingNilesh Dalvi
 
lecture-5 string.pptx
lecture-5 string.pptxlecture-5 string.pptx
lecture-5 string.pptxDilanAlmsa
 
C++ Strings.ppt
C++ Strings.pptC++ Strings.ppt
C++ Strings.pptDilanAlmsa
 
String in programming language in c or c++
String in programming language in c or c++String in programming language in c or c++
String in programming language in c or c++Azeemaj101
 
Manipulating strings
Manipulating stringsManipulating strings
Manipulating stringsJancypriya M
 
Manipulation strings in c++
Manipulation strings in c++Manipulation strings in c++
Manipulation strings in c++SeethaDinesh
 
13 Strings and Text Processing
13 Strings and Text Processing13 Strings and Text Processing
13 Strings and Text ProcessingIntro C# Book
 
String predefined functions in C programming
String predefined functions in C  programmingString predefined functions in C  programming
String predefined functions in C programmingProfSonaliGholveDoif
 
Introduction to Java Strings, By Kavita Ganesan
Introduction to Java Strings, By Kavita GanesanIntroduction to Java Strings, By Kavita Ganesan
Introduction to Java Strings, By Kavita GanesanKavita Ganesan
 
(How) can we benefit from adopting scala?
(How) can we benefit from adopting scala?(How) can we benefit from adopting scala?
(How) can we benefit from adopting scala?Tomasz Wrobel
 
CS101- Introduction to Computing- Lecture 38
CS101- Introduction to Computing- Lecture 38CS101- Introduction to Computing- Lecture 38
CS101- Introduction to Computing- Lecture 38Bilal Ahmed
 
String and string manipulation
String and string manipulationString and string manipulation
String and string manipulationShahjahan Samoon
 
Structured data type
Structured data typeStructured data type
Structured data typeOmkar Majukar
 

Similar to Object oriented Programming with C++ Manipulating Strings (20)

Standard Template Library
Standard Template LibraryStandard Template Library
Standard Template Library
 
Operator Overloading
Operator OverloadingOperator Overloading
Operator Overloading
 
Java Strings
Java StringsJava Strings
Java Strings
 
lecture-5 string.pptx
lecture-5 string.pptxlecture-5 string.pptx
lecture-5 string.pptx
 
8. String
8. String8. String
8. String
 
C++ Strings.ppt
C++ Strings.pptC++ Strings.ppt
C++ Strings.ppt
 
Java string handling
Java string handlingJava string handling
Java string handling
 
String in programming language in c or c++
String in programming language in c or c++String in programming language in c or c++
String in programming language in c or c++
 
Manipulating strings
Manipulating stringsManipulating strings
Manipulating strings
 
Manipulation strings in c++
Manipulation strings in c++Manipulation strings in c++
Manipulation strings in c++
 
Data structure
Data structureData structure
Data structure
 
13 Strings and Text Processing
13 Strings and Text Processing13 Strings and Text Processing
13 Strings and Text Processing
 
String predefined functions in C programming
String predefined functions in C  programmingString predefined functions in C  programming
String predefined functions in C programming
 
Introduction to Java Strings, By Kavita Ganesan
Introduction to Java Strings, By Kavita GanesanIntroduction to Java Strings, By Kavita Ganesan
Introduction to Java Strings, By Kavita Ganesan
 
(How) can we benefit from adopting scala?
(How) can we benefit from adopting scala?(How) can we benefit from adopting scala?
(How) can we benefit from adopting scala?
 
CS101- Introduction to Computing- Lecture 38
CS101- Introduction to Computing- Lecture 38CS101- Introduction to Computing- Lecture 38
CS101- Introduction to Computing- Lecture 38
 
Ruby Basics
Ruby BasicsRuby Basics
Ruby Basics
 
Scala in Places API
Scala in Places APIScala in Places API
Scala in Places API
 
String and string manipulation
String and string manipulationString and string manipulation
String and string manipulation
 
Structured data type
Structured data typeStructured data type
Structured data type
 

More from Nilesh Dalvi

10. Introduction to Datastructure
10. Introduction to Datastructure10. Introduction to Datastructure
10. Introduction to DatastructureNilesh Dalvi
 
9. Input Output in java
9. Input Output in java9. Input Output in java
9. Input Output in javaNilesh Dalvi
 
6. Exception Handling
6. Exception Handling6. Exception Handling
6. Exception HandlingNilesh Dalvi
 
5. Inheritances, Packages and Intefaces
5. Inheritances, Packages and Intefaces5. Inheritances, Packages and Intefaces
5. Inheritances, Packages and IntefacesNilesh Dalvi
 
4. Classes and Methods
4. Classes and Methods4. Classes and Methods
4. Classes and MethodsNilesh Dalvi
 
3. Data types and Variables
3. Data types and Variables3. Data types and Variables
3. Data types and VariablesNilesh Dalvi
 
1. Overview of Java
1. Overview of Java1. Overview of Java
1. Overview of JavaNilesh Dalvi
 
Inheritance : Extending Classes
Inheritance : Extending ClassesInheritance : Extending Classes
Inheritance : Extending ClassesNilesh Dalvi
 
Constructors and destructors
Constructors and destructorsConstructors and destructors
Constructors and destructorsNilesh Dalvi
 
Classes and objects
Classes and objectsClasses and objects
Classes and objectsNilesh Dalvi
 
Introduction to cpp
Introduction to cppIntroduction to cpp
Introduction to cppNilesh Dalvi
 
Introduction to oops concepts
Introduction to oops conceptsIntroduction to oops concepts
Introduction to oops conceptsNilesh Dalvi
 

More from Nilesh Dalvi (17)

13. Queue
13. Queue13. Queue
13. Queue
 
12. Stack
12. Stack12. Stack
12. Stack
 
11. Arrays
11. Arrays11. Arrays
11. Arrays
 
10. Introduction to Datastructure
10. Introduction to Datastructure10. Introduction to Datastructure
10. Introduction to Datastructure
 
9. Input Output in java
9. Input Output in java9. Input Output in java
9. Input Output in java
 
6. Exception Handling
6. Exception Handling6. Exception Handling
6. Exception Handling
 
5. Inheritances, Packages and Intefaces
5. Inheritances, Packages and Intefaces5. Inheritances, Packages and Intefaces
5. Inheritances, Packages and Intefaces
 
4. Classes and Methods
4. Classes and Methods4. Classes and Methods
4. Classes and Methods
 
3. Data types and Variables
3. Data types and Variables3. Data types and Variables
3. Data types and Variables
 
2. Basics of Java
2. Basics of Java2. Basics of Java
2. Basics of Java
 
1. Overview of Java
1. Overview of Java1. Overview of Java
1. Overview of Java
 
Templates
TemplatesTemplates
Templates
 
Inheritance : Extending Classes
Inheritance : Extending ClassesInheritance : Extending Classes
Inheritance : Extending Classes
 
Constructors and destructors
Constructors and destructorsConstructors and destructors
Constructors and destructors
 
Classes and objects
Classes and objectsClasses and objects
Classes and objects
 
Introduction to cpp
Introduction to cppIntroduction to cpp
Introduction to cpp
 
Introduction to oops concepts
Introduction to oops conceptsIntroduction to oops concepts
Introduction to oops concepts
 

Recently uploaded

Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
The byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxThe byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxShobhayan Kirtania
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104misteraugie
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
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
 

Recently uploaded (20)

Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
The byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxThe byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptx
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
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
 

Object oriented Programming with C++ Manipulating Strings

  • 1. OObbjjeecctt oorriieenntteedd PPrrooggrraammmmiinngg wwiitthh CC++++ MMaanniippuullaattiinngg SSttrriinnggss By Nilesh Dalvi LLeeccttuurreerr,, PPaattkkaarr--VVaarrddee CCoolllleeggee.. http://www.slideshare.net/nileshdalvi01
  • 2. Introduction • A string is a sequence of characters. • Strings can contain small and capital letters, numbers and symbols. • Each element of string occupies a byte in the memory. • Every string is terminated by a null character(‘0’). • Its ASCII and Hex values are zero. Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
  • 3. Introduction • The string is stored in the memory as follows: char country [6] = "INDIA"; I N D I A '0' 73 78 68 73 65 00 • Each character occupies a single byte in memory as shown above. • The various operations with strings such as copying, comparing, concatenation, or replacing requires a lot of effort in ‘C’ programming. • These string is called as C-style string. Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
  • 4. String library functions Functions Description strlen() Determines length of string. strcpy() Copies a string from source to destination strcmp() Compares characters of two strings. stricmp() Compares two strings. strlwr() Converts uppercase characters in strings to lowercase strupr() Converts lowercase characters in strings to uppercase strdup() Duplicates a string strchr() Determines first occurrence of given character in a string strcat() Appends source string to destination string strrev() Reversing all characters of a string strspn() finds up at what length two strings are identical Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
  • 5. Program explains above functions Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). #include <iostream> #include <string> using namespace std; int main() { char name[10]; cout << "Enter name: " << endl; cin >> name; cout << "Length :" << strlen (name)<< endl; cout << "Reverse :" << strrev (name)<< endl; return 0; } Output: Enter name: ABC Length :3 Reverse :CBA
  • 6. Moving from C-String to C++String • Manipulation of string in the form of char array requires more effort, C uses library functions defined in string.h. • To make manipulation easy ANSI committee added a new class called string. • It allows us to define objects of string type and they can e used as built in data type. • The programmer should include the string header file. Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
  • 7. Declaring and initializing string objects • In C, we declare strings as given below: char name[10]; • Whereas in C++ string is declared as an object. • The string object declaration and initialization can be done at once using constructor in string class. Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
  • 8. String constructors Constructors Meaning string (); Produces an empty string string (const char * text); Produces a string object from a null ended string string (const string & text); Produces a string object from other string objects We can declare and initialize string objects as follows: string text; // Declaration of string objects //using construtor without argument string text("C++"); //using construtor with one argument text1 = text2; //Asssignment of two string objects text = "C++"+ text1; //Concatenation of two strings objects Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
  • 9. Performing assignment and concatenation Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). #include <iostream> #include <string> using namespace std; int main() { string text; string text1(" C++"); string text2(" OOP"); cout << "text1 : "<< text1 << endl; cout << "text2 : "<< text2 << endl; text = text1; // assignment operation text = text1 + text2; // concatenation cout << "Now text : "<<text << endl; return 0; } Output: text1 : C++ text2 : OOP Now text : C++ OOP
  • 10. String manipulating functions Functions Description append() Adds one string at the end of another string assign() Assigns a specified part of string at() Access a characters located at given location begin() returns a reference to the beginning of a string capacity() calculates the total elements that can be stored compare() compares two strings empty() returns false if the string is not empty, otherwise true end() returns a reference to the termination of string erase() erases the specified character find() finds the given sub string in the source string insert() inserts a character at the given location Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
  • 11. String manipulating functions Functions Description length() calculates the total number of elements in string replace() substitutes the specified character with the given string resize() modifies the size of the string as specified size() provides the number of character n the string swap() Exchanges the given string with another string Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
  • 12. String Relational Operators Operator Working = Assignment + joining two or more strings += concatenation and assignment == Equality != Not equal to < Less than <= Less than or equal > Greater than >= Greater than or equal [] Subscription << insertion >> Extraction Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
  • 13. Comparing two strings using operators #include<iostream> #include<string> using namespace std; Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). int main() { string s1("OOP"); string s2("OOP"); if(s1 == s2) cout << "n Both strings are identical"; else cout << "n Both strings are different"; return 0; }
  • 14. Comparing two strings using compare() #include<iostream> #include<string> using namespace std; Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). int main() { string s1("abd"); string s2("abc"); int d = s1.compare (s2); if(d == 0) cout << "n Both strings are identical"; else if(d > 0) cout << "n s1 is greater than s2"; else cout << "n s2 is greater than s1"; return 0; }
  • 15. Inserting string using insert() #include<iostream> #include<string> using namespace std; Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). int main() { string s1("abcpqr"); string s2("mno"); cout << "S1: " << s1 << endl; cout << "S2: " << s2 << endl; cout << "After Insertion: " << endl; s1.insert(3,s2); cout << "S1: " << s1 << endl; cout << "S2: " << s2 << endl; return 0; } Output :: S1: abcpqr S2: mno After Insertion: S1: abcmnopqr S2: mno
  • 16. Remove specified character s using erase() #include<iostream> #include<string> using namespace std; Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). int main() { string s1("abc1234pqr"); cout << "S1: " << s1 << endl; cout << "After Erase : " << endl; s1.erase(3,5); cout << "S1: " << s1 << endl; return 0; } Output : S1: abc1234pqr After Erase : S1: abcqr
  • 17. String Attributes: size() Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). #include<iostream> #include<string> using namespace std; int main() { string s1; cout << "Size : " << s1.size () << endl; s1 = "abc"; cout << "Size : " << s1.size () << endl; return 0; } Output :: Size : 0 Size : 3
  • 18. String Attributes: length() Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). #include<iostream> #include<string> using namespace std; int main() { //length () : determines the length i.e. no. of characters string s1; cout << "Length : " << s1.length () << endl; s1 = "hello"; cout << "Length : " << s1.length () << endl; return 0; } Output :: Length : 0 Length : 5
  • 19. String Attributes: capacity() Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). #include<iostream> #include<string> using namespace std; int main() { //capacity () : determines capacity of string object // i.e. no. of characters it can hold. string s1; cout << "Capacity : " << s1.capacity () << endl; s1 = "hello"; cout << "Capacity : " << s1.capacity () << endl; s1 = "abcdefghijklmnopqr"; cout << "Capacity : " << s1.capacity () << endl; return 0; } Output : Capacity : 15 Capacity : 15 Capacity : 31
  • 20. String Attributes: empty() Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). #include<iostream> #include<string> using namespace std; int main() { string s1; cout << "Empty : " <<( s1.empty ()? "True" : "False") << endl; s1 = "hello"; cout << "Empty : " <<( s1.empty ()? "True" : "False") << endl; return 0; }
  • 21. Accessing elements of string : at() #include<iostream> #include<string> using namespace std; Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). int main() { string s1("abcdefghijkl"); for(int i = 0; i < s1.length (); i++) cout << s1.at(i); // using at() for(int i = 0; i < s1.length (); i++) cout << s1. [i]; // using operator [] return 0; }
  • 22. Accessing elements of string : find() #include<iostream> #include<string> using namespace std; Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). int main() { string s1("TechTalks : Where everything is out of box!"); int x = s1.find ("box"); cout << "box is found at " << x << endl; return 0; } Output :: box is found at 39
  • 23. Exchanging content of two strings: swap() #include<iostream> #include<string> using namespace std; Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). int main() { string s1("ttt"); string s2("rrr"); cout << "S1 :" << s1 << endl; cout << "S2 :" << s2 << endl; s1.swap (s2); cout << "S1 :" << s1 << endl; cout << "S2 :" << s2 << endl; return 0; } Output : S1 :ttt S2 :rrr S1 :rrr S2 :ttt
  • 24. Miscellaneous functions: assign() #include<iostream> #include<string> using namespace std; Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W). int main() { string s1("c plus plus"); string s2; s2.assign (s1, 0,6); cout << s2; return 0; } Output : c plus
  • 25. Miscellaneous functions: begin() Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).
  • 26. Miscellaneous functions: end() Nilesh Dalvi, Lecturer@Patkar-Varde College, Goregaon(W).