C-and-C++/C3/Strings/English
Title of script: Strings
Author: Ashwini R Patil
Keywords: Strings in C, getline, Video Tutorial
|
|
Slide 1 | Welcome to the spoken-tutorial on Strings in C and C++ |
Slide 2
|
In this tutorial, we will learn,
What is a string. Declaration of the string. Initialization of the string. With the help of an example. We will aldo see some common errors and their solutions |
Slide 3
|
To record this tutorial, I am using
Ubuntu Operating System version 11.04 gcc and g++ Compiler version 4.6.1 on ubuntu |
Slide 4 | Let us start with the Introduction to the Strings
String is a sequence of characters that is treated as a single data item size of string = original length of string + 1 |
Slide 5
Declaration of the String Syntax: char val[10]; |
Let me tell you how to declare a string
The syntax for this is char name_of_string[size]; |
Please open the Terminal
|
Now we will see how to declare a string with an
example I have already typed the program So I will just open it Note that I have saved the file with the name string.c Let me explain the code now |
Highlight
#include<string.h> |
Here, string.h is a header file
It includes the declarations, functions, constants of string handling utilities Whenever we work on string functions, we should include this header file |
Highlight
char strname[30]; |
Here we are declaring the string 'strname' with size '30' |
Highlight
printf("Enter the string\n"); |
Here we are accepting a string from the user |
Highlight
scanf("%[^\n]s",strname);
|
To read a string, we can use scanf() function with format specifier %s
Here we are using the caret sign and \n to include the spaces with the string |
Type:
printf("The string is %s\n", strname); |
Here we print the string |
Save the program | Now click on Save to save the program |
Execution of the program
On the terminal
|
Let us execute the program
Please open the terminal window by pressing Ctrl, Alt and T keys simultaneously |
Type
gcc strdeclare.c str >> press Enter |
To compile
Type gcc strdeclare.c str And press Enter |
Type
./str >> press Enter |
To execute,
type ./str and press Enter |
Enter the string is displayed here | |
Type
Talk To A Teacher >> press Enter
|
I will type
Talk To A Teacher and press Enter |
Highlight
Output |
And the output is displayed as
The string is Talk To A Teacher |
Slide 6
|
Let us switch back to the slides
Now we are going to discuss how to initialize the string This is done by specifying the value To initialize a string the syntax is char var_name[size] = “string”; (or) char var_name[] = {'S', 't', 'r'}; |
Please switch to the Text editor
|
Let me show you how to use the first syntax with an example
Please switch back to the Text Editor Let me use the same example |
Click on
File >> Save as option Type strinitialize.c |
First click on File menu
Click on Save as option Let us save the file with the name strinitialize.c |
Click on save | Now click on Save |
Type
|
Let us change a few things here
Let us replace the 5th line with char strname [30] = “Talk To A Teacher”; Here we have initialized a character array strname with size '30' |
Delete
printf("Enter the string\n"); scanf("%[^\n]s",strname); |
Please remove the next two lines
as we only want to print the string We are not taking the string as input from the user |
Save the program | Now let us save the program and execute it |
On the terminal
Type gcc strinitialize.c -o str1
|
Come back to the terminal
Let us compile as before Type gcc strinitialize.c -o str1 |
To execute
Type ./str1 |
To execute
Type ./str1 |
Highlight
Output |
Here the output is displayed as
The string is Talk To A Teacher |
Error1
Type sting.h |
Let us see some common errors which we can come across
Suppose here we type the spelling of string as sting |
Click on Save | I will retain rest of the code as it is
Click on Save |
On the terminal | To execute the program, we will go on the terminal |
Compile and execute as before
|
Let us compile and execute as before
We see that there is a fatal error The compiler is not able to find the header file with the name <sting.h> Hence the compilation is terminated |
On the editor, correct the spelling | Let us fix this error
Come back to the program Type r here |
On the terminal | Come back on the terminal
Let us compile and execute as before Yes it is working! |
Error2
Type int |
Let us see another common error
Suppose I type int here in place of char Let us see what happens Come back on the terminal |
On the terminal | Let us compile and execute as before
We see there is an error and a warning The format specifier for string is %s And we are declaring it with an integer data type int |
On the editor | Let us fix the error
Come back to our program Let us type char here |
Click on save | Click on Save |
On the terminal | Come back to our terminal
Let us compile and execute as before |
Yes it is working! | |
On the editor | NOW LET US SEE HOW TO EXECUTE THE SAME PROGRAM IN C++
Come back to our program |
Click on File
Type .cpp |
First let us save the file with an extention .cpp
Click on File menu Click on Save as option Now save the file with an extension .cpp |
Let me change a few things here | |
Type
iostream |
First we will change the header file as
iostream |
Type
|
We will include another header file here
Type #include <string> |
Type
using namespace std; |
We will include the using statement here |
Type
string strname; |
Let us define a string variable strname
Since we don't use the format specifier in C++ , the compiler should know that strname is a string variable |
Type
cout << |
Now replace the printf statement with cout statement
|
Delete scanf
Type getline(cin, strname);
|
Now delete the scanf statement here and
Type getline(cin, strname); |
We use getline to extract the characters from the input sequence
It stores them as a string | |
Type
cout <<"The string is " <<strname <<"\n";
printf("The string is %s\n",strname); |
Now again replace the printf statement with cout statement
Delete the format specifier and \n here Type two opening angle brackets Then again type two opening angle brackets here and type within the double quotes \n Delete the closing bracket here |
Click on save | Now click on Save |
On the terminal | Come back on the terminal |
Type
g++ string.cpp -o str1 |
To compile type
g++ string.cpp -o str1 |
Type
./str1 |
To execute type
./str1 |
Highlight >> type Talk To A Teacher | Enter the string is displayed here
I will type Talk To A Teacher |
The output is displayed as
The string is Talk To A Teacher | |
Slide 7
Assignment |
As an assignment
Write a program to print a string using the 2nd syntax |
Slide 8
|
Watch the video available at the link shown
http://spoken-tutorial.org /What\_is\_a\_Spoken\_Tutorial It summarises the Spoken Tutorial project If you do not have good bandwidth, you can download and watch it |
Slide 9
Spoken Tutorial Workshops
|
The Spoken Tutorial Project Team
Conducts workshops using spoken tutorials Gives certificates to those who pass an online test For more details, Please write to contact@spoken-tutorial.org |
Slide 10
|
Spoken Tutorial Project is a part of the Talk to a Teacher project
It is supported by the National Mission on Education through ICT, MHRD, Government of India More information on this Mission is available at: http://spoken-tutorial.org\NMEICT-Intro |
Ashwini Patil from IIT Bombay
Thank You for joining |