View All
View All
View All
View All
View All
View All
View All
View All
View All
View All
View All
View All

String Functions in C

By Pavan Vadapalli

Updated on Nov 30, 2022 | 7 min read | 5.7k views

Share:

Programming in C uses a collection of characters and various present functions to simplify lengthy coding processes into short and precise functions for easy implementation. These functions make handling easy for programmers to equip multiple operations within limited characters and manipulate the strings. Diverse programming languages contain their in-built functions, ready to use on a whim for precision. 

Today, we will discuss the C programming language string and its functions to grab an in-depth insight into the diverse string functions, their uses, benefits, and other functionalities which make it dynamic to work along for programmers. 

What is string

The string is present in diverse programming languages, though c processes string differently than usual programming languages. In C language, a string is a one-dimensional array of characters where each string character takes up one location in an array. The string is ended with a null character defined by ‘\0’, which refers to the end of any string. 

Let’s take a look at the character and string representation:

char string[10] = {‘w’,’e’,’l’,’c’,’o’,’m’,’e’,’\0’};
char string[10] = “welcome”;
char string []= “welcome”;

Ending a string with a null character is important to recognize the sequence of characters as a string. Otherwise, it is simply a sequence of characters without the null terminator. Note that strings are enclosed within double quotes, while single quotation marks enclose characters in a sequence. Declaring the string as string[10] allocates 10 bytes of the string, while string[] allocates memory during program execution.

Learn Software Development Courses online from the World’s top Universities. Earn Executive PG Programs, Advanced Certificate Programs or Masters Programs to fast-track your career.

Declaration of String

As mentioned above, strings are declared using two different methods. C is a statistical language that is one-dimensional. Therefore, string variables require a declaration to attach a particular meaning to any string. 

For example- char temp[]=” temp string”;

t e m p   s t r i n g \0

Strings of char type, when declared within double quotes, then ‘\0’ is directly applied at the end of the string to end it. It can also be expressed as char temp[]=” temp string”;

  • The character declared as ‘string[6]’  will hold 6 bytes of memory to allocate string values. On the other hand, declaration as ‘string[]’ will allocate space as per the requirement through the program’s execution. 

Initialization of String

Process of declaration and initialization go hand in hand where declaration declares the existence of a variable and initialization assigns value to it. Initialization of strings in c has many ways to implement. Here are a few of them:

 

  • char t[]=” temp string”;
  • char t[10]=” temp string”;
  • char t[]={‘t’,’e’,’m’, ‘d’,’\0’};
  • char t[5]={‘t’,’e’,’m’, ‘d’,’\0’};

String Functions in C

string functions in C programming language are included to simplify dealing with string handling. String functions refer to a sequence of sentences that perform specific tasks. These functions can be reused in diverse strings to simplify string handling, enabling the usage of the same set of instructions in different coding patterns. Many programmers reap benefits from string functions to save time on rewriting codes several times. Here are the advantages of using string functions:

  • Reduced size of the code
  • Enhanced readability
  • Easier debugging process
  • Improved reusability of the code allowing programmers to use similar functions without needing to write the code from scratch.

Types of String Functions

Instead of using complex code sequences to manipulate codes, different in-built string functions can be used to handle strings that are stored in a standard string handling functions library of C language, called the ‘string.h’. 

Here are some common string handling functions:

1. Function printf() and scanf()

scanf() function is used to take input from the users until it faces whitespace or end.

For example:

#include <stdio.h>
int main()
{
    int testInteger;
    printf(“Enter an integer: “);
    scanf(“%d”, &testInteger);  
    printf(“Number = %d”,testInteger);
    return 0;
}

Output:

Enter an integer: 4

Number = 4

printf() function directs formatted output to the screen, printing both the string and variables.

For example:

#include <stdio.h>    
int main()
{ 
    // Displays the string inside quotations
    printf(“C Programming”);
    return 0;
}

Output:

C Programming

2. Function puts() and gets()

gets() function takes the user input while reading the whitespace as a string. On the other hand, puts() function permits to print string output on the user screen.

For example: 

#include main()
Int main()
{
char temp[20];
printf(“Enter your Name”);
gets(temp);
printf(“My Name is: ”);
puts(temp);
return 0;
}

3. Function strcpy()

strcpy() function copies the content of one string to the other string. 

For example:

#include <stdio.h>
#include <string.h>
int main()
{
     char s1[30] = “string 1”;
     char s2[30] = “string 2 : I’m gonna copied into s1”;
     /* this function has copied s2 into s1*/
     strcpy(s1,s2);
     printf(“String s1 is: %s”, s1);
     return 0;
} 
Output:

String s1 is: string 2: I’m gonna copied into s1

4. Function strlen()

Instead of writing a manual program to get the length of any string, use function strlen() to find out the length of any string. 

For example:

#include <stdio.h>
#include <string.h>
int main()
{
     char str1[20] = “BeginnersBook”;
     printf(“Length of string str1 when maxlen is 30: %d”, strnlen(str1, 30));
     printf(“Length of string str1 when maxlen is 10: %d”, strnlen(str1, 10));
     return 0;
}
Output:

Length of string str1 when maxlen is 30: 13

Length of string str1 when maxlen is 10: 10

5. Function strrev()

strrev() function can be used to reverse the content of any string. 

For example: 

#include<stdio.h>
#include<string.h>
int main()
{
char temp[20]=”Reverse”;
printf(“String before reversing is : %s\n”, temp);
printf(“String after strrev() :%s”, strrev(temp));
return 0;
}

6. Function strcmp()

strcmp() function is used to compare two strings. The function strcmp in C compares mutual features between two strings to deliver result. If the strings are similar, strcmp in C catches it. 

For example:

#include <stdio.h>
#include <string.h>
int main()
{
     char s1[20] = “BeginnersBook”;
     char s2[20] = “BeginnersBook.COM”;
     if (strcmp(s1, s2) ==0)
     {
        printf(“string 1 and string 2 are equal”);
     }else
      {
         printf(“string 1 and 2 are different”);
      }
     return 0;
}
Output:

string 1 and 2 are different

7. Function strcat()

strcat() function is used to append the source string to the end of the destination string. (The cat refers to concatenated)

For example: 

#include <stdio.h>
#include <string.h>
int main()
{
     char s1[10] = “Hello”;
     char s2[10] = “World”;
     strcat(s1,s2);
     printf(“Output string after concatenation: %s”, s1);
     return 0;
}
Output:

Output string after concatenation: HelloWorld

8. Function strlwr()/strupr()

strlwr() and strupr()  functions help convert letters from lowercase to uppercase and vice versa.

For example: 

#include<stdio.h>
#include<string.h>
int main()
{
char str[]=”CONVERT me To the Lower Case”;
printf(“%s\n”, strlwr(str));
return 0;
}

Output: 

convert me to the lower case

Similarly, the resultant output will convert to uppercase if we use strupr() function in place of strlwr()

Enhance Career Opportunities as a Programmer

Thorough knowledge of C or any other programming language can grant you a great headstart for a successful IT career; all you need is a professional certification and dedicated mindspace to enhance your skills. upGrad’s Executive Program in Software Development., extended by Purdue University, can be your chance to kick start your Full-Stack career.

The course curriculum is prepared following the latest skills, including MERN, development, programming essentials, API, Front-end and Back-end development, DevOps, and more. Surprisingly, learners do not have to bring prior coding language, making the program open to all tech aspirants! 

Along with experienced faculty members, upGrad’s dynamic learning platform enables students to learn in a thriving environment by industry leaders, who train them in in-depth concepts relevant to the current tech market. 

Coverage of AWS, Microsoft Azure and GCP services

Certification8 Months
View Program

Job-Linked Program

Bootcamp36 Weeks
View Program

Visit upGrad to learn more!

Conclusion

These in-built functions are extremely reliable for programmers to use through complex coding sequences to save time and effort on creating functions for certain operations. Besides these explained functions, the string header file contains diverse other function-linked operations to simplify programming. 

Keep practicing to explore all of them!

Frequently Asked Questions (FAQs)

1. What are String and their types?

2. What is a null character in C?

3. What are functions in C?

Pavan Vadapalli

Pavan Vadapalli

900 articles published

Get Free Consultation

By submitting, I accept the T&C and
Privacy Policy

India’s #1 Tech University

Executive PG Certification in AI-Powered Full Stack Development

77%

seats filled

View Program

Top Resources

Recommended Programs

upGrad

AWS | upGrad KnowledgeHut

AWS Certified Solutions Architect - Associate Training (SAA-C03)

69 Cloud Lab Simulations

Certification

32-Hr Training by Dustin Brimberry

View Program
upGrad KnowledgeHut

upGrad KnowledgeHut

Angular Training

Hone Skills with Live Projects

Certification

13+ Hrs Instructor-Led Sessions

View Program
upGrad

upGrad KnowledgeHut

Full Stack Development Bootcamp - Essential

Job-Linked Program

Bootcamp

36 Weeks

View Program