Skip to content

Introduction to C Strings

An introduction to C Strings

In C, strings are one special kind of array: a string is an array of char values:

char name[7];

I introduced the char type when I introduced types, but in short it is commonly used to store letters of the ASCII chart.

A string can be initialized like you initialize a normal array:

char name[7] = { 'F', 'l', 'a', 'v', 'i', 'o' };

Or more conveniently with a string literal (also called string constant), a sequence of characters enclosed in double quotes:

char name[7] = "Flavio";

You can print a string via printf() using %s:

printf("%s", name);

Do you notice how “Flavio” is 6 chars long, but I defined an array of length 7? Why? This is because the last character in a string must be a 0 value, the string terminator, and we must make space for it.

This is important to keep in mind especially when manipulating strings.

Speaking of manipulating strings, there’s one important standard library that is provided by C: string.h.

This library is essential because it abstracts many of the low level details of working with strings, and provides us a set of useful functions.

You can load the library in your program by adding on top:

#include <string.h>

And once you do that, you have access to:

and many, many more.

I will introduce all those string functions in separate blog posts, but just know that they exist.


→ Here's my latest YouTube video

→ Get my C Handbook

→ I wrote 17 books to help you become a better developer, download them all at $0 cost by joining my newsletter

JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025

Bootcamp 2025

Join the waiting list