Sunday, 24 May 2015

  • Sunday, May 24, 2015

Chapter 16


C - Strings


The string in C programming language is actually a one-dimensional array of characters which is terminated by a null character '\0'. Thus a null-terminated string contains the characters that comprise the string followed by a null.
The following declaration and initialization create a string consisting of the word "Hello". To hold the null character at the end of the array, the size of the character array containing the string is one more than the number of characters in the word "Hello."
char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};
If you follow the rule of array initialization then you can write the above statement as follows:
char greeting[] = "Hello";
Following is the memory presentation of above defined string in C/C++:
String Presentation in C/C++
Actually, you do not place the null character at the end of a string constant. The C compiler automatically places the '\0' at the end of the string when it initializes the array. Let us try to print above mentioned string:
#include <stdio.h>

int main ()
{
   char greeting[6] = {'H', 'e', 'l', 'l', 'o', '\0'};

   printf("Greeting message: %s\n", greeting );

   return 0;
}
When the above code is compiled and executed, it produces result something as follows:
Greeting message: Hello
C supports a wide range of functions that manipulate null-terminated strings:
S.N.Function & Purpose
1strcpy(s1, s2);
Copies string s2 into string s1.
2strcat(s1, s2);
Concatenates string s2 onto the end of string s1.
3strlen(s1);
Returns the length of string s1.
4strcmp(s1, s2);
Returns 0 if s1 and s2 are the same; less than 0 if s1<s2; greater than 0 if s1>s2.
5strchr(s1, ch);
Returns a pointer to the first occurrence of character ch in string s1.
6strstr(s1, s2);
Returns a pointer to the first occurrence of string s2 in string s1.
Following example makes use of few of the above-mentioned functions:
#include <stdio.h>
#include <string.h>

int main ()
{
   char str1[12] = "Hello";
   char str2[12] = "World";
   char str3[12];
   int  len ;

   /* copy str1 into str3 */
   strcpy(str3, str1);
   printf("strcpy( str3, str1) :  %s\n", str3 );

   /* concatenates str1 and str2 */
   strcat( str1, str2);
   printf("strcat( str1, str2):   %s\n", str1 );

   /* total lenghth of str1 after concatenation */
   len = strlen(str1);
   printf("strlen(str1) :  %d\n", len );

   return 0;
}
When the above code is compiled and executed, it produces result something as follows:
strcpy( str3, str1) :  Hello
strcat( str1, str2):   HelloWorld
strlen(str1) :  10
You can find a complete list of c string related functions in C Standard Library.

Related Posts:

  • Banks and Their Tag Lines 1.    Allahabad Bank - A Tradition of Trust 2.    Andhra Bank – Where India Banks 3.    Bank of Baroda - India’s International Bank 4.  &nb… Read More
  • Reasoning : Puzzle Directions (Q.1-7): Study the following information carefully to answer following questions carefully.Five friends name – Ajay, Raju, Shivam, Mannu and Nakul have different professions-Actor, Engineer, Doctor, Bank Manager a… Read More
  • Reasoning : Puzzle Directions : Study the following infromation to answer the given questions:6 lectures are scheduled in a week starting from Monday and ending on Sunday of the same week. Computer Science is not on Tuesday or Saturday. Psycho… Read More
  • Prime Minister Launched 125 Rupees Coin Prime Minister Narendra Modi on Friday released a commemorative coin and a circulation coin in honour of former President of India Dr Sarvapalli Radhakrishnan.  The PM released a commemorative coin of Rs 125 and a cir… Read More
  • General Awareness : Current Affairs Questions For IBPS Mains Q.Name the Indian cyclist who clinched gold medal in the Taiwan Cup Track International Classic I Tournament 2015.  Ans: Deborah Herold … Read More
Related Posts Plugin for WordPress, Blogger...

Vacancy

RBI has announced the recruitment for 134 GRADE B OFFICERS.
 The examination will be in two phases.
 The detailed advertisement will be published on 5th October.

Popular Posts