Accept Paragraph using scanf in C

January 11, 2025 2 Comments » Hits : 193





Accept Paragraph using scanf in C

#include<stdio.h>
void main()
{
char para[100];
printf("Enter Paragraph : ");
scanf("%[\^t]",para);
printf("%s",para);
}

Output :[Press Tab to Stop Accepting Characters ]

Enter Paragraph : C Programming is very easy to understand
C
Language
is backbone of
C++
Language

How ?

scanf("%[^t]",para);
  1. Here scanf will accept Characters entered with spaces.
  2. It also accepts the Words , new line characters .
  3. [^t] represent that all characters are accepted except tab(t) , whenever t will encountered then the process of accepting characters will be terminated.

Drawbacks :

  1. Paragraph Size cannot be estimated at Compile Time
  2. It’s vulnerable to buffer overflows.

How to Specify Maximum Size to Avoid Overflow ?

//------------------------------------
// Accepts only 100 Characters
//------------------------------------
scanf("%100[^t]",para);

Download PDF :

Click Here

Incoming search terms:

  • Ricky

    cool

  • Rory Tarski

    Thanks for your fascinating article.