Ongoing/String

IO Functions [C] Character & String

More Code 2018. 6. 15. 19:10


// VC : suppress error messages about obsolete & deprecated functions
#pragma warning(disable : 4996)
#define _CRT_SECURE_NO_WARNINGS
#define _CRT_SECURE_NO_WARNINGS_GLOBALS

#include <iostream>

#define LENGTH 100

int main()
{
int letter;
char buffer[LENGTH];
char bumper[LENGTH];

letter = getchar(); // getchar is a wrapper function for fgetc
putchar(letter); // putchar is a wrapper function for fputc

letter = fgetchar(); // This POSIX function is deprecated
fputchar(letter); // This POSIX function is deprecated

letter = getc(stdin); // getc is identical to fgetc (may be a MACRO)
putc(letter, stdout); // putc is identical to fputc (may be a MACRO)

letter = fgetc(stdin);
fputc(letter, stdout);

gets(buffer); // gets replaces the newline character (\n) with a terminating null character (\0), gets is obsolete
puts(buffer); // puts replaces the terminating null character (\0) with a newline character (\n), puts is obsolete

fgets(buffer, LENGTH, stdin); // fgets retains the newline character (\n)
fputs(buffer, stdout); // fputs does not copy the terminating null character (\0)

scanf("%s %s", buffer, bumper); // scanf is a wrapper function for fscanf
printf("printf buffer %s bumper %s\n", buffer, bumper); // printf is a wrapper function for fprintf

fscanf(stdin, "%s %s", buffer, bumper);
fprintf(stdout, "fprintf buffer %s bumper %s\n", buffer, bumper);

sprintf(buffer, "sscanf sprintf %d", LENGTH); // Write formatted data to buffer
sscanf(buffer, "%s", bumper); // Read formatted data from buffer
printf("buffer %s bumper %s\n", buffer, bumper);

return 0;
}