Strings in C Language
C Strings
Ø
The string can be defined as the one-dimensional array of
characters terminated by a null ('\0').
Ø
The character array or the string is used to manipulate text
such as word or sentences.
Ø
Each character in the array occupies one byte of memory, and the
last character must always be 0.
Ø
The termination character ('\0') is important in a string since
it is the only way to identify where the string ends.
Ø
When we define a string as char s[10], the character s[10] is
implicitly initialized with the null in the memory.
There are two ways to declare a string in c language.
- By
char array
- By
string literal
Let's see the example of declaring string by char array in C language.
1.
char ch[10]={'e', 'x', 'a', 'm', 'p', 'l', 'e','\0'};
As we know, array index starts from 0, so it will be represented
as in the figure given below.
0 1
2 3 4
5 6 7
E |
x |
a |
m |
p |
l |
e |
\0 |
While declaring string, size is not mandatory. So we can write the
above code as given below:
1.
char ch[]={'e', 'x', 'a', 'm', 'p', 'l', 'e','\0'};
We can also define the string by the string
literal in C language. For example:
1.
char ch[]="example";
In such case, '\0' will be appended at the end of the string by
the compiler.
Difference between char array and string literal
There are two main differences between char array and literal.
- We
need to add the null character '\0' at the end of the array by ourself
whereas, it is appended internally by the compiler in the case of the
character array.
- The
string literal cannot be reassigned to another set of characters whereas,
we can reassign the characters of the array.
String Example in C
#include<stdio.h>
#include <string.h>
void main()
{
char ch[10]={'e', 'x', 'a', 'm', 'p', 'l', 'e','\0'};
char ch2[10]="example";
printf("Char Array Value is: %s\n", ch);
printf("String Literal Value is: %s\n", ch2);
}
Output
Char Array Value is: example
String Literal Value
is: example
Comments
Post a Comment