Programming Strings. COMP102 Prog. Fundamentals: Strings / Slide 2 Character Strings l A sequence of characters is often referred to as a character “string”.

Slides:



Advertisements
Similar presentations
Chapter 9 Strings. Copyright © 2006 Pearson Addison-Wesley. All rights reserved. 9-2 Learning Objectives An Array Type for Strings C-Strings Character.
Advertisements

Copyright © 2002 Pearson Education, Inc. Slide 1.
EC-111 Algorithms & Computing Lecture #11 Instructor: Jahan Zeb Department of Computer Engineering (DCE) College of E&ME NUST.
 2003 Prentice Hall, Inc. All rights reserved Fundamentals of Characters and Strings Character constant –Integer value represented as character.
Strings.
1 Chapter 10 Strings and Pointers. 2 Introduction  String Constant  Example: printf(“Hello”); “Hello” : a string constant oA string constant is a series.
What is a pointer? First of all, it is a variable, just like other variables you studied So it has type, storage etc. Difference: it can only store the.
Lecture 24: Strings. 2 Lecture Contents: t Library functions t Assignment and substrings t Concatenation t Comparison t Demo programs t Exercises.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Slide 8- 1 Overview 8.1 An Array Type for Strings 8.2 The Standard string.
C Strings. The char Data Type for Storing Characters The char data type can is used to declare a variable that can hold a single character. Examples:
Chapter 10.
C++ Data Type String A string is a sequence of characters enclosed in double quotes. Examples of strings: “Hello” “CIS 260” “Students” The empty string.
COMP102 – Programming Fundamentals I LA2B (Mon 5-7pm) LA2E (Fri 3-5pm) LA2F (Fri 5-7pm) TA: Jackie Lo.
CS31: Introduction to Computer Science I Discussion 1A 5/7/2010 Sungwon Yang
Arrays Chapter 6.
C-Strings A C-string (also called a character string) is a sequence of contiguous characters in memory terminated by the NUL character '\0'. C-strings.
Arrays Hanly - Chapter 7 Friedman-Koffman - Chapter 9.
Computer Science 1620 Strings. Programs are often called upon to store and manipulate text word processors chat databases webpages etc.
ACS 168 Structured Programming Using the Computer Spring 2002 Joaquin Vila Prepared by Shirley White.
1 Chapter 10 Characters, Strings, and the string class.
Introduction to C programming
Chapter 8 Strings and Vectors (8.1 and 8.2). An Array of characters Defined as: char firstName[20]; char firstName[] = {‘T’, ‘i’, ‘m’}; // an array of.
CSIS 123A Lecture 6 Strings & Dynamic Memory. Introduction To The string Class Must include –Part of the std library You can declare an instance like.
Data Type string #include // C++ String class string str1, str2; // Default constructor cin >> str1 >> str2; cout
1 Data Structures A Data Structure is an arrangement of data in memory. A Data Structure is an arrangement of data in memory.  The purpose is to map real.
Dr. Yang, QingXiong (with slides borrowed from Dr. Yuen, Joe) LT8: Characters and Strings CS2311 Computer Programming.
Copyright © 2012 Pearson Education, Inc. Chapter 10: Characters, C- Strings, and More About the string Class.
Define our own data types We can define a new data type by defining a new class: class Student {...}; Class is a structured data type. Can we define our.
9-1 Learning Objectives  An Array Type for Strings  C-Strings.
1 Problem Solving with C++ The Object of Programming Walter Savitch Chapter 10 Strings and Multidimensional Arrays Slides by David B. Teague, Western Carolina.
Introduction to Programming Lecture 8. String Handling  Character is the building block of strings.  Characters are represented inside the computer.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 10: Characters, Strings, and the string class.
Characters, Strings, And The string Class Chapter 10.
1 Cannon_Chapter9 Strings and the string Class. 2 Overview  Standards for Strings  String Declarations and Assignment  I/O with string Variables 
Representing Strings and String I/O. Introduction A string is a sequence of characters and is treated as a single data item. A string constant, also termed.
1 Character Strings (Cstrings) Reference: CS215 textbook pages
COIT29222-Structured Programming Lecture Week 08  Reading: Textbook (4 th Ed.), Chapter 4 Textbook (6 th Ed.), Chapter 7 Study Guide Book 2, Module 11.
C++ String Class nalhareqi©2012. string u The string is any sequence of characters u To use strings, you need to include the header u The string is one.
Strings Programming Applications. Strings in C C stores a string in a block of memory. The string is terminated by the \0 character:
Copyright 2003 Scott/Jones Publishing Standard Version of Starting Out with C++, 4th Edition Chapter 10 Characters, Strings, and the string class.
CS 1430: Programming in C++ 1. Data Type string #include // C++ String class string str1, str2; // Default constructor cin >> str1 >> str2; cout
Chapter 9 Strings. Learning Objectives An Array Type for Strings – C-Strings Character Manipulation Tools – Character I/O – get, put member functions.
Sahar Mosleh California State University San MarcosPage 1 Character String.
13. Strings. String Literals String literals are enclosed in double quotes: "Put a disk in drive A, then press any key to continue\n“ A string literal.
 2003 Prentice Hall, Inc. All rights reserved. 11 Fundamentals of Characters and Strings Character constant –Integer value of a character –Single quotes.
An Array Type For Strings. Two ways to represent strings – i.e. “Hello” cstring An array with base type char Older way of processing strings Null character.
C++ Programming Lecture 19 Strings The Hashemite University Computer Engineering Department (Adapted from the textbook slides)
Chapter Characters, Strings, and the string class 10.
Strings, Slide Fundamental Programming Strings.
Arrays Chapter 12. Overview Arrays and their properties Creating arrays Accessing array elements Modifying array elements Loops and arrays.
DCT1063 Programming 2 CHAPTER 3 STRINGS Mohd Nazri Bin Ibrahim Faculty of Computer, Media & Technology TATi University College
Array. Array is a group of data of the same type. Array elements have a common name –The array as a whole is referenced through the common name Individual.
Strings. String Literals String literals are enclosed in double quotes: "Put a disk in drive A, then press any key to continue\n“ A string literal may.
13. Strings. String Literals String literals are enclosed in double quotes: "Put a disk in drive A, then press any key to continue\n“ A string literal.
Slide 1 Chapter 9 Strings. Slide 2 Learning Objectives  An Array Type for Strings  C-Strings  Character Manipulation Tools  Character I/O  get, put.
String in C++. 2 Using Strings in C++ Programs String library or provides functions to: - manipulate strings - compare strings - search strings ASCII.
EC-111 Algorithms & Computing Lecture #10 Instructor: Jahan Zeb Department of Computer Engineering (DCE) College of E&ME NUST.
Suyash Bhardwaj Dept. of Computer Science & Engineering Faculty of Engineering & Technology Gurukul Kangri University, Haridwar l1l1 UNIT 1 String Processing.
Introduction Programs which manipulate character data don’t usually just deal with single characters, but instead with collections of them (e.g. words,
Pointers & Arrays 1-d arrays & pointers 2-d arrays & pointers.
Strings A string is a sequence of characters treated as a group
Standard Version of Starting Out with C++, 4th Edition
Strings A collection of characters taken as a set:
String in C++.
Chapter 9 Strings Copyright © 2008 Pearson Addison-Wesley. All rights reserved.
CPS120: Introduction to Computer Science
Standard Version of Starting Out with C++, 4th Edition
C++ Programming Lecture 20 Strings
Strings Skill Area 313 Part C
Presentation transcript:

Programming Strings

COMP102 Prog. Fundamentals: Strings / Slide 2 Character Strings l A sequence of characters is often referred to as a character “string”. A string is stored in an array of type char ending with the null character '\0 '.

COMP102 Prog. Fundamentals: Strings / Slide 3 l A string containing a single character takes up 2 bytes of storage. Character Strings

COMP102 Prog. Fundamentals: Strings / Slide 4 Character Strings

COMP102 Prog. Fundamentals: Strings / Slide 5 Character Strings

COMP102 Prog. Fundamentals: Strings / Slide 6 Character vs. String l A string constant is a sequence of characters enclosed in double quotes. n For example, the character string: char s1[2]= " a "; //Takes two bytes of storage. s1: n On the other hand, the character, in single quotes: char s2= `a`; //Takes only one byte of storage. s2: a\0 a

COMP102 Prog. Fundamentals: Strings / Slide 7 Character vs. String

COMP102 Prog. Fundamentals: Strings / Slide 8 Example 1 char message1[12] = "Hello world"; cout << message1 << endl; message1: char message2[12]; cin >> message2; // type "Hello" as input message2:

COMP102 Prog. Fundamentals: Strings / Slide 9 Example 2: String I/O String can be input using the extraction operator >>, but one or more white spaces indicates the end of an input string. char A_string[80], E_string[80]; cout << "Enter some words in a string:\n"; cin >> A_string >> E_string; cout << A_string << E_string << “\nEND OF OUTPUT\n"; Output: Enter some words in a string: This is a test. Thisis END OF OUTPUT

COMP102 Prog. Fundamentals: Strings / Slide 10 getline The function getline can be used to read an entire line of input into a string variable. The getline function has three parameters: n The first specifies the area into which the string is to be read. n The second specifies the maximum number of characters, including the string delimiter. n The third specifies an optional terminating character. If not included, getline stops at ‘\n’.

COMP102 Prog. Fundamentals: Strings / Slide 11 Example 3: getline char A_string[80]; cout << "Enter some words in a string:\n"; //80 is the size of A_string cin.getline(A_string, 80); cout << A_string << “\nEND OF OUTPUT\n"; Output: Enter some words in a string: This is a test. END OF OUTPUT

COMP102 Prog. Fundamentals: Strings / Slide 12 Example 4: getline Example char A_string[5], E_string[80]; cout << "Enter some words in a string:\n"; cin >> A_string; cin.getline (E_string, 9) ; cout << A_string << "#" << E_string << “\nEND OF OUTPUT\n"; Output: Enter some words in a string: This is a test. This# is a te END OF OUTPUT

COMP102 Prog. Fundamentals: Strings / Slide 13 Example 5: getline Example char lastName[30], firstName[30]; cout :\n"; cin.getline (lastName, sizeof(lastName), ','); cin.getline (firstName, sizeof(firstName)); cout << "Here is the name you typed:\n\t|" << firstName << " " << lastName << "|\n"; Output: Enter a name in the form : Chan,Anson Here is the name you typed: |Anson Chan|

COMP102 Prog. Fundamentals: Strings / Slide 14

COMP102 Prog. Fundamentals: Strings / Slide 15 Ex. 6: String Copy Function in void strcpy(char dest[], const char src[]); // copies string src into string dest example: char name1[16], name2[16]; strcpy(name1,"Chan Tai Man"); name1: name2: strcpy(name2," "); strcpy(name2,name1); ChanTaiMan\0??? ChanTaiMan

COMP102 Prog. Fundamentals: Strings / Slide 16 Example 7: strcpy in #include using namespace std; int main (){ char string_1[6] = "Short";// character strings char string_2[17] = "Have a Nice Day"; char string_3[6] = "Other"; strcpy(string_1, string_2); return 0; }

COMP102 Prog. Fundamentals: Strings / Slide 17 Ex. 8: String Length Check Function in // string prototype, already included in string.h //returns length of string(not counting'\0‘) //you don't need to include it in your program int strlen(const char[]); int string_length = strlen("abcde"); //string_length is set to 5.

COMP102 Prog. Fundamentals: Strings / Slide 18 Ex. 9: String Length Check Function Example #include using namespace std; int main(){ char string_1[5] = "ABCD", string_2[10]=" "; cout << "String 1 = " << string_1 << endl; cout << "String 2 = " << string_2 << endl; strncpy(string_1,string_2,strlen(string_1)); cout << "After copying, string 1 = " << string_1<<endl; return 0; } //output: String 1 = ABCD String 2 = After copying, string 1 = 1234

COMP102 Prog. Fundamentals: Strings / Slide 19 Ex. 10: String Length Check Function in //Copy the value of a string to a string variable #include using namespace std; void string_copy(char target[], const char source[], int target_size); //Before: target_size is the declared size of target. //not including '\0'. //After: The value of target has been set to the string //value in source, provided the declared size of //target is large enough. If target is not large //enough to hold the entire string, a string //equal to the length of target will be stored.

COMP102 Prog. Fundamentals: Strings / Slide 20 Ex. 10: String Copy and String Length Check int main( ) //Driver function { char short_string[11]; char long_string[] = "This is rather long."; cout << long_string << "STRING ENDS HERE.\n"; string_copy(short_string, "Hello", 10); cout << short_string << "STRING ENDS HERE.\n"; string_copy(short_string, long_string, 10); cout << short_string << "STRING ENDS HERE.\n"; return 0; }

COMP102 Prog. Fundamentals: Strings / Slide 21 Ex. 10: String Copy and String Length Check //Uses string.h: void string_copy(char target[], const char source[], int target_size) { int index; int new_length = strlen(source); if (new_length > (target_size)) new_length = target_size ; for (index = 0; index < new_length; index++) target[index] = source[index]; target[index] = '\0'; }

COMP102 Prog. Fundamentals: Strings / Slide 22 Ex. 10: String Copy and String Length Check Output: This is rather long.STRING ENDS HERE. HelloSTRING ENDS HERE. This is raSTRING ENDS HERE.

COMP102 Prog. Fundamentals: Strings / Slide 23 String Comparison int strcmp(char s1[], char s2[]); /*compares strings s1 and s2, returns < 0 if s1 < s2 = 0 if s1 == s2 (i.e. strcmp returns false) > 0 if s1 > s2 */ int strncmp(char s1[], char s2[], int limit); /* Same as strcmp except that at most limit characters are compared. */

COMP102 Prog. Fundamentals: Strings / Slide 24 String Comparison int comp102_strncmp(char s1[], char s2[], int limit) { for (int i=0; i < limit; i++){ if (s1[i] < s2[i]) return -1; if (s1[i] > s2[i]) return 1; } return 0; }

COMP102 Prog. Fundamentals: Strings / Slide 25

COMP102 Prog. Fundamentals: Strings / Slide 26 Ex. 11: String Comparison Examples str1 str2return valuereason “AAAA”“ABCD”<0‘A’ <‘B’ “B123”“A089”>0‘B’ > ‘A’ “127”“409” <0‘1’ < ‘4’ “abc888” =0equal string “abc”“abcde”<0str1 is a sub string of str2 “3”“12345”>0‘3’ > ‘1’

COMP102 Prog. Fundamentals: Strings / Slide 27 Some Common Errors l It is illegal to assign a value to a string variable (except at declaration). char A_string[10]; A_string = "Hello"; // illegal assignment Should use instead strcpy (A_string, "Hello");

COMP102 Prog. Fundamentals: Strings / Slide 28 Ex. 12: Some Common Errors The operator == doesn't test two strings for equality. if (string1 == string2) //wrong cout << "Yes!"; // illegal comparison Should use instead if (!strcmp(string1,string2)) cout << "Yes they are same!"; //note that strcmp returns 0 (false) if //the two strings are the same.