Escape Sequence in C Language

Understanding of Escape Sequence in C Language

Escape sequences in C language are a crucial aspect of working with character data within string literals. These s

equences are special combinations of characters that enable the representation of characters that would otherwise be challenging or impossible to include directly through keyboard input or within a string.

Escape sequences play a vital role in enhancing the flexibility of character handling within C programs. They allow you to insert control characters, special symbols, and non-printable characters into strings, making it possible to create more versatile and meaningful outputs.

Understanding how to use escape sequences is fundamental for any C programmer, as they provide a means to manipulate the appearance and behavior of text within C programs. In this exploration of escape sequences in C, we will delve into various commonly used escape sequences, their functions, and examples of their practical applications. By the end of this discussion, you will have a solid grasp of how to harness the power of escape sequences to enhance the functionality and readability of your C code.

Different escape sequences represent various characters, but the output may vary depending on the compiler in use.

Escape Sequence List

The table provided below lists common escape sequences in the C language.

Escape SequenceNameDescription
\aAlarm or BeepGenerates a bell sound in the C program.
\bBackspaceMoves the cursor one place backward.
\fForm FeedMoves the cursor to the start of the next logical page.
\nNew LineMoves the cursor to the start of the next line.
\rCarriage ReturnMoves the cursor to the start of the current line.
\tHorizontal TabInserts whitespace to the left of the cursor and moves the cursor accordingly.
\vVertical TabInserts vertical space.
\BackslashInserts a backslash character.
\’Single QuoteDisplays a single quotation mark.
\”Double QuoteDisplays double quotation marks.
\?Question MarkDisplays a question mark.
\oooOctal NumberRepresents an octal number.
\xhhHexadecimal NumberRepresents a hexadecimal number.
\0NULLRepresents the NULL character.

Out of all these escape sequences, \n and \0 are the most commonly used. In fact, escape sequences like \f and \a are rarely used by programmers nowadays.

Escape Sequence in C Examples

Below are examples demonstrating how to use different escape sequences in the C language:

Using \a escape sequence in C

// C program to illustrate \a escape sequence
#include <stdio.h>

int main(void) {
    // Output may depend on the compiler
    printf("My mobile number "
           "is 7\a9\a7\a8\a9\a2\a8\a4\a6\a8\a");
    return 0;
}

Output

My mobile number is 7978928468

Using \b escape sequence in C

// C program to illustrate \b escape sequence
#include <stdio.h>

int main(void) {
    // \b - backspace character transfers
    // the cursor one character back with
    // or without deleting on different
    // compilers.
    printf("Hello \b\b\b\b\b\bHi PiEmbSysTech");
    return 0;
}

Output

Hi PiEmbSysTech

Using \n escape sequence in C

// C program to illustrate \n escape sequence
#include <stdio.h>

int main(void) {
    // Here we are using \n, which is a new line character.
    printf("Hello\n");
    printf("PiEmbSysTech");
    return 0;
}

Output

Hello
PiEmbSysTech

Using \t escape sequence in C

// C program to illustrate \t escape sequence
#include <stdio.h>

int main(void) {
    // Here we are using \t, which is
    // a horizontal tab character.
    // It will provide a tab space
    // between two words.
    printf("Hello \t PiEmbSysTech");
    return 0;
}

Output

Hello      PiEmbSysTech

Using \v escape sequence in C

// C program to illustrate \v escape sequence
#include <stdio.h>

int main(void) {
    // Here we are using \v, which
    // is a vertical tab character.
    printf("Hello friends\v");
    printf("Welcome to PiEmbSysTech");
    return 0;
}

Output

Hello friends
                       Welcome to PiEmbSysTech

Using \r escape sequence in C

// C program to illustrate \r escape sequence
#include <stdio.h>

int main(void) {
    // Here we are using \r, which
    // is a carriage return character.
    printf("Hello   PiEmbSys \rTech");
    return 0;
}

Output

PiEmbSysTech

Using \ escape sequence in C

// C program to illustrate \\(Backslash)
// escape sequence to print backslash.
#include <stdio.h>

int main(void) {
    // Here we are using \,
    // It contains two escape sequence
    // means \ and \n.
    printf("Hello\\PiEmbSysTech");
    return 0;
}

Output

Hello\PiEmbSysTech

Explanation: It contains two escape sequences, where after printing the first “\”, the compiler interprets the next “\” as a newline character, i.e., “\n,” which prints “PiEmbSysTech” on the next line.

Using \’ and \” escape sequences in C

// C program to illustrate \' escape
// sequence/ and \" escape sequence to
// print single quote and double quote.
#include <stdio.h>

int main(void) {
    printf("\' Hello PiEmbSysTech\n");
    printf("\" Hello PiEmbSysTech");
    return 0;
}

Output

' Hello PiEmbSysTech
" Hello PiEmbSysTech

Using \? escape sequence in C

// C program to illustrate
// \? escape sequence
#include <stdio.h>

int main(void) {
    // Here we are using \?, which is
    // used for the presentation of trigraph
    // in the early days of C programming. But
    // now we don't have any use for it.
    printf("\?\?!\n");
    return 0;
}

Output

??!

Using \ooo escape sequence in C

// C program to illustrate \OOO escape sequence
#include <stdio.h>

int main(void) {
    // We are using \OOO escape sequence, where
    // each O in "OOO" is one to three octal
    // digits (0....7).
    char* s = "A\072\065";
    printf("%s", s);
    return 0;
}

Output

A:5

Explanation: Here, “000” represents one to three octal digits (0…7), meaning there must be at least one octal digit after “\”, with a maximum of three. The “072” is the octal notation, which is first converted to decimal notation, representing the ASCII value of the character “:”. Therefore, “\072” is replaced with “:” in the output.

Using \xhh escape sequence in C

// C program to illustrate \XHH

 escape
// sequence
#include <stdio.h>

int main(void) {
    // We are using \xhh escape sequence.
    // Here, hh represents one or more hexadecimal
    // digits (0....9, a...f, A...F).
    char* s = "B\x4a";
    printf("%s", s);
    return 0;
}

Output

BJ"

Please note that the output of some escape sequences may vary depending on the compiler used.


Discover more from PiEmbSysTech

Subscribe to get the latest posts sent to your email.

Leave a Reply

Scroll to Top

Discover more from PiEmbSysTech

Subscribe now to keep reading and get access to the full archive.

Continue reading