Skip to content

Introduction to C Strings

New Course Coming Soon:

Get Really Good at Git

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.

Are you intimidated by Git? Can’t figure out merge vs rebase? Are you afraid of screwing up something any time you have to do something in Git? Do you rely on ChatGPT or random people’s answer on StackOverflow to fix your problems? Your coworkers are tired of explaining Git to you all the time? Git is something we all need to use, but few of us really master it. I created this course to improve your Git (and GitHub) knowledge at a radical level. A course that helps you feel less frustrated with Git. Launching May 21, 2024. Join the waiting list!
→ Get my C Handbook

Here is how can I help you: