Brianna
Brianna

Reputation: 23

How do I scan spaces into a a string?

I am trying to scan in 1-3 words from the user into a string. However, Only the first word will scan.

Upvotes: 2

Views: 1757

Answers (2)

Jerry Coffin
Jerry Coffin

Reputation: 490623

One possibility is to use a scan set conversion instead of a string conversion:

char buffer[256];
scanf("%255[^\n]", buffer);

Much like fgets, this reads up to the end of the line rather than stopping at the first white-space character.

Upvotes: 3

Mahesh
Mahesh

Reputation: 34655

scanf("%s", &area ) ;

scanf stops reading from the stream when a space is encountered. You need to use getline instead.

Upvotes: 3

Related Questions