This blog is under construction

Thursday, 2 January 2014

Character Input and Output functions in C

The following are the built in functions available in C which can be used to to perform character input & output operations.

int fgetc(FILE *stream)
It reads the next character from the stream and returns the integer(ascii) value of the character read.

int fputc(int c, FILE *stream)
It writes the character c on the given stream.  Returns the written character on success.  Otherwise, EOF is returned.

fgetc and fputc example in C

  #include <stdio.h>
  int main() {
        int ch;
        /* prints the input data on the output screen */
        while ((ch = fgetc(stdin)) != EOF) {  //ctrl + D to exit
                fputc(ch, stdout);
        }
        return 0;
  }

  Output:
  jp@jp-VirtualBox:~/$ ./a.out
  hello world
  hello world



int getc(FILE *stream);
It reads the next character from the given stream. It evaluates the given stream more than one time, if it is a macro.  Returns integer value(ascii) of the character read.

int putc(int c, FILE *stream);
It writes the character c into the given stream.  It evaluates the given stream more than once, if it is a macro.  Returns the integer value(ascii) of the written character on success, EOF on failure.

getc and putc example in C


  #include <stdio.h>
  int main() {
        int ch;
        /* prints the input data on the output screen */
        while ((ch = getc(stdin)) != EOF) {  //ctrl + D to exit
                putc(ch, stdout);
        }
        return 0;
  }

  Output:
  jp@jp-VirtualBox:~/$ ./a.out
  hello world
  hello world



char *fgets(char *str, int n, FILE *stream)
It reads n-1 character from the input stream, stops reading if a newline character is encountered; newline + '\0' is included at the end of input string. String str is returned as the return value on success.  Otherwise, NULL is returned.


int fputs(const char *str, FILE *stream)
It writes the string str on stream.  Returns the non-negative integer on success, EOF on failure.

fgets and fputs example in C

  #include <stdio.h>
  int main() {
        char str[256];
        printf("Enter your input string:");
        fgets(str, 256, stdin);  // gets input from standard i/p
        printf("Below is your input string:\n");
        fputs(str, stdout);  // prints str in standard o/p screen
        return 0;
  }

  Output:
  jp@jp-VirtualBox:~/$ ./a.out
  Enter your input string:India is my country
  Below is your input string:
  India is my country



int getchar(void)
Inputs a character.  Returns the integer value(ascii) of the character read.

int putchar(int c)
Write character c on standard output.

getchar and putchar example in C

  #include <stdio.h>
  int main() {
        int ch;
        /* prints the input data on the output screen */
        while ((ch = getchar()) != EOF) {
                putchar(ch);
        }
        return 0;
  }

  Output:
  jp@jp-VirtualBox:~/$ ./a.out
  hello world
  hello world



char *gets(char *str)
Gets the given input string into the character array str.  Returns str on success, EOF or NULL is returned on failure.

int puts(const char *str)
It writes the given string and a newline to stdout.  Returns non-negative integer on success, EOF is returned on failure.

gets and puts example in C

  #include <stdio.h>
  int main() {
        char str[256];
        printf("Enter your input string:");
        gets(str);  // gets input from standard i/p
        printf("Below is your input string:\n");
        puts(str);  // prints str in standard o/p screen
        return 0;
  }

  Output:
  jp@jp-VirtualBox:~/$ ./a.out
  Enter your input string:Hello world
  Below is your input string:
  Hello world



int ungetc(int c, FILE *stream)
It pushes character c back onto the given stream.  Returns character c on success, EOF on failure.

ungetc example in C

  #include <stdio.h>
  int main() {
        char ch;
        while ((ch = getchar()) != EOF) {  // ctrl + d is EOF
                if (ch == '\n') {
                        /*
                         * pushes # to stdin.. So, getchar()
                         * would read the character '#' on its
                         * subsequent call
                         */
                        ungetc('#', stdin);
                        continue;
                }
                putchar(ch);
        }
        return 0;
  }

  Output:
  jp@jp-VirtualBox:~/$ ./a.out
  india             
  india#


Note:
fgetc, fputc, fgets, fputs, getc and putc are the built-in functions used to perform character input output operation on files.


2 comments:

  1. Hello Everyone !

    USA SSN Leads/Dead Fullz available, along with Driving License/ID Number with good connectivity.

    All SSN's are Tested & Verified.

    **DETAILS IN LEADS/FULLZ**

    ->FULL NAME
    ->SSN
    ->DATE OF BIRTH
    ->DRIVING LICENSE NUMBER
    ->ADDRESS WITH ZIP
    ->PHONE NUMBER, EMAIL
    ->EMPLOYEE DETAILS

    *Price for SSN lead $2
    *You can ask for sample before any deal
    *If you buy in bulk, will give you discount
    *Sampling is just for serious buyers

    ->Hope for the long term business
    ->You can buy for your specific states too

    **Contact 24/7**

    Whatsapp > +923172721122

    Email > leads.sellers1212@gmail.com

    Telegram > @leadsupplier

    ICQ > 752822040

    ReplyDelete
  2. Dell Laptop Repair Center in Noida is no.1 service center which provides door to door services in or its nearby areas. We have expert, technicians who can repair your laptop at your home. . Call us: 9891868324

    ReplyDelete