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);
- Here scanf will accept Characters entered with spaces.
- It also accepts the Words , new line characters .
- [^t] represent that all characters are accepted except tab(t) , whenever t will encountered then the process of accepting characters will be terminated.
Drawbacks :
- Paragraph Size cannot be estimated at Compile Time
- It’s vulnerable to buffer overflows.
How to Specify Maximum Size to Avoid Overflow ?
//------------------------------------
// Accepts only 100 Characters
//------------------------------------
scanf("%100[^t]",para);


cool
Thanks for your fascinating article.