#include <stdio.h> #include <stdlib.h> #include <ctype.h> int main(int argc, char *argv[]) { printf("First name: "); // one safe way to read a string char first[100]; scanf("%s99", first); // note - at most 99 bytes + 1 for the NULL character printf("Last name: "); // another safe way to read a string char last[100]; int pos=0; int ch; while ((ch = fgetc(stdin)) != EOF) { if (isspace(ch) && pos == 0) continue; else if (isspace(ch)) break; last[pos] = ch; pos++; } last[pos] = '\0'; printf("Type some sentence...\n"); // one way to safely read a line char * line = NULL; size_t numChars=0, result; result = getline(&line, &numChars, stdin); printf("You typed: %s\n", line); printf("Type something else...\n"); // another safe way to read a line char line2[100]; scanf("%99[^\n]s", line2); printf("You typed: %s\n", line2); // note - you could also safely read a line by using fgetc // note - need to free line2 because it was malloc'ed free(line); line = NULL; return 0; }