Strings
Introduction
 A string is a sequence of characters that
is treated as a single data item.
 Any group of characters(except double
quote sign) defined between double
quotation marks is a string constant.
Example:
“Man is obviously made to think.”
 Normally, string is useful for storing data
like name, address, city etc.
Copyright ©2013 Yash Agarwal. All rights reserved.
Strings
 C implements the stringstring data structure using arrays of
type char.
 You have already used the string extensively.
 printf(“This program is terminated!n”);
 Since stringstring is an array, the declaration of a string is
the same as declaring a char array.
 char string_var[30];
 char string_var[20] = “Initial value”;
Copyright ©2013 Yash Agarwal. All rights reserved.
Memory Storage for a
String
 ASCII code is internally used to represent string in
memory.
 In ‘C’ each string is always ended with a nullnull
charactercharacter ‘0’‘0’.
 The characters after the null character are ignored.
 e.g., char str[20] = “Initial value”;
Copyright ©2013 Yash Agarwal. All rights reserved.
n i t i a l v a l u e ? ? …I 00
[0] [13]
Common operations
performed on strings
 Reading and writing strings
 Combining strings together
 Copying one string to another
 Comparing strings for equality
 Extracting a portion of a string
Copyright ©2013 Yash Agarwal. All rights reserved.
Input/Output of a
String
 The %s%s format specifier is used to represent string arguments in
printf and scanf.
 printf(“Topic: %sn”, string_var);
 The string can be right-justified by placing a positive number in
the format specifier .
 printf(“%8s%8s”, str);
 The string can be left-justified by placing a negative number in
the format specifier .
 Printf(“%-8s%-8s”, str);
Copyright ©2013 Yash Agarwal. All rights reserved.
An Example of
Manipulating String
with scanf and printf
Copyright ©2004 Pearson Addison-Wesley. All rights reserved.
The dept is the initial memory
address of the string argument. Thus
we don’t apply the & operator on it.
Execution of scanf
("%s", dept);
Copyright ©2004 Pearson Addison-Wesley. All rights reserved.
• Whenever encountering a white space, the scanning stops
and scanf places the null character at the end of the string.
• e.g., if the user types “MATH 1234 TR 1800,” the string
“MATH” along with ‘0’ is stored into dept.
String Library
Functions
 The string can not be copied by the
assignment operator ‘=’.
 e.g., “str = “Test String”” is not
valid.
 C provides string manipulating or built-in
functions in the “string.h” library.
 We require to include string.h header file
for using built-in string functions.
Copyright ©2013 Yash Agarwal. All rights reserved.
Some String Functions from
String.h
Function Purpose Example
strcpy Makes a copy of a
string
strcpy(s1, “Hi”);
strcat Appends a string to the
end of another string
strcat(s1, “more”);
strcmp Compare two strings
alphabetically
strcmp(s1, “Hu”);
strlen Returns the number of
characters in a string
strlen(“Hi”)
returns 2.
strtok Breaks a string into
tokens by delimiters.
strtok(“Hi, Chao”,
“ ,”);
Copyright ©2013 Yash Agarwal. All rights reserved. 9-10
Copyright ©2013 Yash Agarwal. All rights reserved. 9-11
Function Purpose Example
strrev Reverses the string s strrev(“Jay”);
Gives: yaJ
strupr Convert string to
uppercase
strupr(“Jay”);
Gives: JAY
strlwr Convert string to lower
case
strlwr(“Jay”);
Gives: jay
strncmp Compares first n
characters in a string
strncmp(s1,“Hi”)
returns 2.
Functions strcpy
and strncpy Function strcpy copies the string in the second
argument into the first argument.
 e.g., strcpy(dest , “test string”);
 The null characternull character is appended at the end
automatically.
 If source string is longer than the destination string, the
overflow characters may occupy the memory space
used by other variables.
 Function strncpy copies the string by specifying
the number of characters to copy.
 You have to place the null character manually.
 e.g., strncpy(dest , “test string”, 6); dest[6] = ‘0’;dest[6] = ‘0’;
 If source string is longer than the destination string, the
overflow characters are discarded automatically.Copyright ©2013 Yash Agarwal. All rights reserved.
Extracting Substring of
a String (1/2)
Copyright ©2004 Pearson Addison-Wesley. All rights reserved.
• We can use strncpy to extract substring of one string.
– e.g., strncpy(result, s1, 9);
Extracting Substring of
a String (2/2)
Copyright ©2004 Pearson Addison-Wesley. All rights reserved.
• e.g., strncpy(result, &s1[5]&s1[5], 2);
Functions strcat and
strlen
 Functions strcat and strncat concatenate
the fist string argument with the second string
argument.
 strcat(dest, “more..”);
 strncat(dest, “more..”, 3);
 Function strlen is often used to check the
length of a string (i.e., the number of
characters before the fist null character).
 e.g., dest[6] = “Hello”;
strncat(dest, “more”, 5-strlen(dest));
dest[5] = ‘0’;Copyright ©2013 Yash Agarwal. All rights reserved.
Distinction Between
Characters and
Strings The representation of a char (e.g., ‘Q’) and a string
(e.g., “Q”) is essentially different.
 A string is an array of characters ended with the
null character.
Copyright ©2013 Yash Agarwal. All rights reserved.
Q
Character ‘Q’
Q 00
String “Q”
String Comparison
(1/2) Suppose there are two strings, str1 and str2.
 The condition str1 < str2 compare the initialinitial
memory addressmemory address of str1 and of str2.
 The comparison between two strings is done by
comparing each corresponding character in
them.
 The characters are compared against the ASCII table.
 “thrill” < “throw” since ‘i’ < ‘o’;
 “joy” < joyous“;
 The standard string comparison uses the strcmp
and strncmp functions.
Copyright ©2013 Yash Agarwal. All rights reserved.
String Comparison (2/2)
Relationship Returned Value Example
str1 < str2 Negative “Hello”< “Hi”
str1 = str2 0 “Hi” = “Hi”
str1 > str2 Positive “Hi” > “Hello”
Copyright ©2013 Yash Agarwal. All rights reserved. 9-18
• e.g., we can check if two strings are the same by
if(strcmp(str1, str2) != 0)
printf(“The two strings are
different!”);
Input/Output of
Characters and
Strings The stdio library provides getchar function which
gets the next character from the standard input.
 “ch = getchar();” is the same as “scanf(“%c”,
&ch);”
 Similar functions are putchar, gets, puts.
 For IO from/to the file, the stdio library also provides
corresponding functions.
 getc: reads a character from a file.
 Similar functions are putc, fgets, fputs.
Copyright ©2013 Yash Agarwal. All rights reserved.
Character Analysis and
Conversion
 The <ctype.h><ctype.h> library defines facilities for
character analysis and conversion.
Functions Description
isalpha Check if the argument is a letter
isdigit Check if the argument is one of the ten digits
isspace Check if argument is a space, newline or tab.
tolower Converts the lowercase letters in the
argument to upper case letters.Copyright ©2013 Yash Agarwal. All rights reserved. 9-20
Presentation By:
 F.Y. MECH-2 STUDENTS :
Name Id no.
Viraj Patel 100
Karan Parekh 103
Yash Agarwal 104
Pritesh Vaghela 105
Copyright ©2013 Yash Agarwal. All rights reserved.

More Related Content

PPT
Operation on string presentation
PPT
Strings
PPT
strings
PDF
String.ppt
PPTX
Strings in C
PPTX
The string class
PDF
Character Array and String
PDF
Strings in c language
Operation on string presentation
Strings
strings
String.ppt
Strings in C
The string class
Character Array and String
Strings in c language

What's hot (20)

PDF
14 ruby strings
PPT
Strings
PDF
05 c++-strings
PDF
Strings IN C
PPT
Strings
PDF
Strinng Classes in c++
PPT
Strings in c
PPT
String Handling
PPTX
Java string handling
PPT
PPTX
Implementation Of String Functions In C
DOC
String in c
PPTX
String in c programming
PPT
Strings In OOP(Object oriented programming)
PPTX
Character array (strings)
PPTX
Strings in Java
PPTX
strings in c language and its importance
PPT
Lecture 6
PPTX
Handling of character strings C programming
PDF
14 ruby strings
Strings
05 c++-strings
Strings IN C
Strings
Strinng Classes in c++
Strings in c
String Handling
Java string handling
Implementation Of String Functions In C
String in c
String in c programming
Strings In OOP(Object oriented programming)
Character array (strings)
Strings in Java
strings in c language and its importance
Lecture 6
Handling of character strings C programming
Ad

Viewers also liked (8)

PDF
Pointers In C
PPTX
function, storage class and array and strings
PPTX
Unit 3. Input and Output
PPTX
Unit 8. Pointers
PPTX
Unit 6. Arrays
PPTX
Pointers in C Programming
PPT
Computer Programming- Lecture 5
PPTX
Array in c language
Pointers In C
function, storage class and array and strings
Unit 3. Input and Output
Unit 8. Pointers
Unit 6. Arrays
Pointers in C Programming
Computer Programming- Lecture 5
Array in c language
Ad

Similar to Strings(2007) (20)

PDF
[ITP - Lecture 17] Strings in C/C++
PPTX
introduction to strings in c programming
PDF
String notes
PPT
14 strings
PPTX
Lecture_on_string_manipulation_functions.pptx
PDF
c programming
PPTX
Strings CPU GTU
PDF
Matlab strings
PPT
THE FORMAT AND USAGE OF STRINGS IN C.PPT
PDF
9 character string &amp; string library
PPT
Strings
PPT
Strings
PPT
Strings
PDF
Strings in c mrs.sowmya jyothi
PDF
STRINGS IN C MRS.SOWMYA JYOTHI.pdf
PPT
CP-STRING.ppt
PPT
CP-STRING.ppt
PPT
CP-STRING (1).ppt
PDF
Strings part2
[ITP - Lecture 17] Strings in C/C++
introduction to strings in c programming
String notes
14 strings
Lecture_on_string_manipulation_functions.pptx
c programming
Strings CPU GTU
Matlab strings
THE FORMAT AND USAGE OF STRINGS IN C.PPT
9 character string &amp; string library
Strings
Strings
Strings
Strings in c mrs.sowmya jyothi
STRINGS IN C MRS.SOWMYA JYOTHI.pdf
CP-STRING.ppt
CP-STRING.ppt
CP-STRING (1).ppt
Strings part2

Recently uploaded (20)

PDF
V2500 Owner and Operatore Guide for Airbus
PDF
BBC NW_Tech Facilities_30 Odd Yrs Ago [J].pdf
PDF
CBCN cam bien cong nghiep bach khoa da năng
PPTX
Cloud Security and Privacy-Module-1.pptx
PDF
THE PEDAGOGICAL NEXUS IN TEACHING ELECTRICITY CONCEPTS IN THE GRADE 9 NATURAL...
PPTX
Module 1 – Introduction to Computer Networks: Foundations of Data Communicati...
PPTX
Unit I - Mechatronics.pptx presentation
PPTX
non conventional energy resorses material unit-1
PDF
IAE-V2500 Engine Airbus Family A319/320
PDF
Application of smart robotics in the supply chain
PDF
Performance, energy consumption and costs: a comparative analysis of automati...
PDF
Software defined netwoks is useful to learn NFV and virtual Lans
PPTX
Unit IILATHEACCESSORSANDATTACHMENTS.pptx
PDF
LS-6-Digital-Literacy (1) K12 CURRICULUM .pdf
PPT
Basics Of Pump types, Details, and working principles.
PDF
MACCAFERRY GUIA GAVIONES TERRAPLENES EN ESPAÑOL
PDF
ANTIOXIDANT AND ANTIMICROBIAL ACTIVITIES OF ALGERIAN POPULUS NIGRA L. BUDS EX...
PPTX
240409 Data Center Training Programs by Uptime Institute (Drafting).pptx
PDF
Electrical & Computer Engineering: An International Journal (ECIJ)
PPTX
ARCHITECTURE AND PROGRAMMING OF EMBEDDED SYSTEMS
V2500 Owner and Operatore Guide for Airbus
BBC NW_Tech Facilities_30 Odd Yrs Ago [J].pdf
CBCN cam bien cong nghiep bach khoa da năng
Cloud Security and Privacy-Module-1.pptx
THE PEDAGOGICAL NEXUS IN TEACHING ELECTRICITY CONCEPTS IN THE GRADE 9 NATURAL...
Module 1 – Introduction to Computer Networks: Foundations of Data Communicati...
Unit I - Mechatronics.pptx presentation
non conventional energy resorses material unit-1
IAE-V2500 Engine Airbus Family A319/320
Application of smart robotics in the supply chain
Performance, energy consumption and costs: a comparative analysis of automati...
Software defined netwoks is useful to learn NFV and virtual Lans
Unit IILATHEACCESSORSANDATTACHMENTS.pptx
LS-6-Digital-Literacy (1) K12 CURRICULUM .pdf
Basics Of Pump types, Details, and working principles.
MACCAFERRY GUIA GAVIONES TERRAPLENES EN ESPAÑOL
ANTIOXIDANT AND ANTIMICROBIAL ACTIVITIES OF ALGERIAN POPULUS NIGRA L. BUDS EX...
240409 Data Center Training Programs by Uptime Institute (Drafting).pptx
Electrical & Computer Engineering: An International Journal (ECIJ)
ARCHITECTURE AND PROGRAMMING OF EMBEDDED SYSTEMS

Strings(2007)

  • 2. Introduction  A string is a sequence of characters that is treated as a single data item.  Any group of characters(except double quote sign) defined between double quotation marks is a string constant. Example: “Man is obviously made to think.”  Normally, string is useful for storing data like name, address, city etc. Copyright ©2013 Yash Agarwal. All rights reserved.
  • 3. Strings  C implements the stringstring data structure using arrays of type char.  You have already used the string extensively.  printf(“This program is terminated!n”);  Since stringstring is an array, the declaration of a string is the same as declaring a char array.  char string_var[30];  char string_var[20] = “Initial value”; Copyright ©2013 Yash Agarwal. All rights reserved.
  • 4. Memory Storage for a String  ASCII code is internally used to represent string in memory.  In ‘C’ each string is always ended with a nullnull charactercharacter ‘0’‘0’.  The characters after the null character are ignored.  e.g., char str[20] = “Initial value”; Copyright ©2013 Yash Agarwal. All rights reserved. n i t i a l v a l u e ? ? …I 00 [0] [13]
  • 5. Common operations performed on strings  Reading and writing strings  Combining strings together  Copying one string to another  Comparing strings for equality  Extracting a portion of a string Copyright ©2013 Yash Agarwal. All rights reserved.
  • 6. Input/Output of a String  The %s%s format specifier is used to represent string arguments in printf and scanf.  printf(“Topic: %sn”, string_var);  The string can be right-justified by placing a positive number in the format specifier .  printf(“%8s%8s”, str);  The string can be left-justified by placing a negative number in the format specifier .  Printf(“%-8s%-8s”, str); Copyright ©2013 Yash Agarwal. All rights reserved.
  • 7. An Example of Manipulating String with scanf and printf Copyright ©2004 Pearson Addison-Wesley. All rights reserved. The dept is the initial memory address of the string argument. Thus we don’t apply the & operator on it.
  • 8. Execution of scanf ("%s", dept); Copyright ©2004 Pearson Addison-Wesley. All rights reserved. • Whenever encountering a white space, the scanning stops and scanf places the null character at the end of the string. • e.g., if the user types “MATH 1234 TR 1800,” the string “MATH” along with ‘0’ is stored into dept.
  • 9. String Library Functions  The string can not be copied by the assignment operator ‘=’.  e.g., “str = “Test String”” is not valid.  C provides string manipulating or built-in functions in the “string.h” library.  We require to include string.h header file for using built-in string functions. Copyright ©2013 Yash Agarwal. All rights reserved.
  • 10. Some String Functions from String.h Function Purpose Example strcpy Makes a copy of a string strcpy(s1, “Hi”); strcat Appends a string to the end of another string strcat(s1, “more”); strcmp Compare two strings alphabetically strcmp(s1, “Hu”); strlen Returns the number of characters in a string strlen(“Hi”) returns 2. strtok Breaks a string into tokens by delimiters. strtok(“Hi, Chao”, “ ,”); Copyright ©2013 Yash Agarwal. All rights reserved. 9-10
  • 11. Copyright ©2013 Yash Agarwal. All rights reserved. 9-11 Function Purpose Example strrev Reverses the string s strrev(“Jay”); Gives: yaJ strupr Convert string to uppercase strupr(“Jay”); Gives: JAY strlwr Convert string to lower case strlwr(“Jay”); Gives: jay strncmp Compares first n characters in a string strncmp(s1,“Hi”) returns 2.
  • 12. Functions strcpy and strncpy Function strcpy copies the string in the second argument into the first argument.  e.g., strcpy(dest , “test string”);  The null characternull character is appended at the end automatically.  If source string is longer than the destination string, the overflow characters may occupy the memory space used by other variables.  Function strncpy copies the string by specifying the number of characters to copy.  You have to place the null character manually.  e.g., strncpy(dest , “test string”, 6); dest[6] = ‘0’;dest[6] = ‘0’;  If source string is longer than the destination string, the overflow characters are discarded automatically.Copyright ©2013 Yash Agarwal. All rights reserved.
  • 13. Extracting Substring of a String (1/2) Copyright ©2004 Pearson Addison-Wesley. All rights reserved. • We can use strncpy to extract substring of one string. – e.g., strncpy(result, s1, 9);
  • 14. Extracting Substring of a String (2/2) Copyright ©2004 Pearson Addison-Wesley. All rights reserved. • e.g., strncpy(result, &s1[5]&s1[5], 2);
  • 15. Functions strcat and strlen  Functions strcat and strncat concatenate the fist string argument with the second string argument.  strcat(dest, “more..”);  strncat(dest, “more..”, 3);  Function strlen is often used to check the length of a string (i.e., the number of characters before the fist null character).  e.g., dest[6] = “Hello”; strncat(dest, “more”, 5-strlen(dest)); dest[5] = ‘0’;Copyright ©2013 Yash Agarwal. All rights reserved.
  • 16. Distinction Between Characters and Strings The representation of a char (e.g., ‘Q’) and a string (e.g., “Q”) is essentially different.  A string is an array of characters ended with the null character. Copyright ©2013 Yash Agarwal. All rights reserved. Q Character ‘Q’ Q 00 String “Q”
  • 17. String Comparison (1/2) Suppose there are two strings, str1 and str2.  The condition str1 < str2 compare the initialinitial memory addressmemory address of str1 and of str2.  The comparison between two strings is done by comparing each corresponding character in them.  The characters are compared against the ASCII table.  “thrill” < “throw” since ‘i’ < ‘o’;  “joy” < joyous“;  The standard string comparison uses the strcmp and strncmp functions. Copyright ©2013 Yash Agarwal. All rights reserved.
  • 18. String Comparison (2/2) Relationship Returned Value Example str1 < str2 Negative “Hello”< “Hi” str1 = str2 0 “Hi” = “Hi” str1 > str2 Positive “Hi” > “Hello” Copyright ©2013 Yash Agarwal. All rights reserved. 9-18 • e.g., we can check if two strings are the same by if(strcmp(str1, str2) != 0) printf(“The two strings are different!”);
  • 19. Input/Output of Characters and Strings The stdio library provides getchar function which gets the next character from the standard input.  “ch = getchar();” is the same as “scanf(“%c”, &ch);”  Similar functions are putchar, gets, puts.  For IO from/to the file, the stdio library also provides corresponding functions.  getc: reads a character from a file.  Similar functions are putc, fgets, fputs. Copyright ©2013 Yash Agarwal. All rights reserved.
  • 20. Character Analysis and Conversion  The <ctype.h><ctype.h> library defines facilities for character analysis and conversion. Functions Description isalpha Check if the argument is a letter isdigit Check if the argument is one of the ten digits isspace Check if argument is a space, newline or tab. tolower Converts the lowercase letters in the argument to upper case letters.Copyright ©2013 Yash Agarwal. All rights reserved. 9-20
  • 21. Presentation By:  F.Y. MECH-2 STUDENTS : Name Id no. Viraj Patel 100 Karan Parekh 103 Yash Agarwal 104 Pritesh Vaghela 105 Copyright ©2013 Yash Agarwal. All rights reserved.