Cómo utilizar la entrada de caracteres / salida en la programación c

El tipo más simple de entrada y salida en la programación C se lleva a cabo en el nivel del personaje: Uno de los personajes va in-One personaje sale. Por supuesto, llegar a ese punto implica un poquito de programación.

Los dispositivos de entrada y salida en la programación C

El lenguaje C nació con el sistema operativo Unix. Como tal, se sigue muchas de las reglas para ese sistema operativo con respecto a la entrada y salida. Esas reglas son bastante sólido:

  • De entrada proviene del dispositivo de entrada estándar, la entrada estándar.

  • De salida es generado por el dispositivo de salida estándar, stdout.

En un equipo, el dispositivo de entrada estándar, la entrada estándar, es el teclado. Entrada también puede ser redirigido por el sistema operativo, por lo que puede venir desde otro dispositivo, como un módem, o también puede provenir de un archivo.

El dispositivo de salida estándar, stdout, es la pantalla. La salida puede ser redirigido para que vaya a otro dispositivo, como una impresora o en un archivo.

funciones del lenguaje C que se ocupan de entrada y salida de los dispositivos de acceso de entrada y salida estándar. No leen directamente desde el teclado o la salida a la pantalla. Bueno, a menos que el código del teléfono programa para hacerlo.

En pocas palabras: A pesar de que sus programas pueden obtener la entrada desde el teclado y enviar la salida a la pantalla, es necesario pensar en lenguaje C de E / S en términos de la entrada estándar y dispositivos stdout lugar. Si se olvida de eso, se puede meter en problemas.

¿Cómo se ha podido recuperar personajes con getchar ()

Es hora de que el código para ser más interactivo. Considere el código fuente de la que se come caracteres, que utiliza la función getchar (). Esta función obtiene (lee) un personaje de la entrada estándar.

Ello come CARACTERES

#include int main () {int c-printf ("Estoy esperando a un personaje: ") -C = getchar () - printf ("Esperaba el character.n `% c`", C) -Retorno (0) -}

El código en el que se come caracteres lee un carácter de la entrada estándar mediante el uso de la función getchar () en la línea 8. Se devuelve el carácter de getchar () y se almacena en el do variable entera.

La línea 9 muestra el carácter almacenado en do. La función printf () utiliza el marcador de posición% c para mostrar caracteres individuales.

Ejercicio 1: El código fuente para ex0701 proyecto, tal como se muestra en la que se come caracteres. Generar y ejecutar.

La función getchar () se define de esta manera:

# include int getchar (void) -

La función no tiene argumentos, por lo que los paréntesis son siempre con las manos la palabra vacío en este ejemplo, básicamente, lo dice. Y la función getchar () requiere que el archivo de cabecera stdio.h para ser incluido con su código fuente.

getchar () devuelve un valor entero, no una variable de tipo char. El compilador le advertirá cuando se olvida. Y no se preocupe: El int contiene un valor de carácter, que es simplemente cómo funciona.

ejercicio 2: Editar la línea 9 en el código fuente de la que se come Caracteres de modo que el% d marcador de posición se utiliza en lugar de% c. Generar y ejecutar.

El valor que se muestra cuando se ejecuta la solución al ejercicio 1 es el valor de código ASCII del carácter. Las% d muestra ese valor en lugar de un valor de carácter, porque internamente el ordenador trata toda la información como valores. Sólo cuando la información se muestra como un personaje no se vea como texto.

Técnicamente, getchar () no es una función. Es un macro - un acceso directo basada en otra función, como se define en el archivo de cabecera stdio.h. La función real para obtener caracteres de la entrada estándar es getc () - en concreto, cuando se usa de esta manera:

c = getc (stdin) -

En este ejemplo, getc () lee desde el dispositivo de entrada estándar, la entrada estándar, que se define en el archivo de cabecera stdio.h. La función devuelve un valor entero, que se almacena en la variable do.

ejercicio 3: Reescribir el código fuente de caracteres que se come, en sustitución de la declaración getchar () con el ejemplo getc () solo se muestra.

ejercicio 4: Escribir un programa que solicita tres personajes- por ejemplo:

Video: 02 Video de C++ - Variables char y string

Estoy esperando a tres personajes:

Código de tres consecutivos getchar () para leer los caracteres. Formatear el resultado como este:

Los tres personajes son `a`, `b`, y `c`

donde estos personajes - A, B, y C - serían reemplazados por la entrada del programa.

Video: Como usar Dev-C++ Entrada y salida de datos(Tutorial 1)(HD)

El programa se crea en el ejercicio 4 espera a tres caracteres. La tecla Enter es un personaje, por lo que si se escribe UN, Entrar, segundo, Entrar, los tres personajes son UN, Introduzca el personaje clave, y luego segundo. Eso es una entrada válida, pero lo que es probable que desea escribir es algo así como A B C o TARTA o LOL y pulse la tecla Intro.

La entrada estándar es orientado a flujo. No espere que sus programas en C para ser interactivo. Ejercicio 4 es un ejemplo de cómo el flujo de entrada funciona- la clave no termina flujo de entrada-simplemente desplaza a lo largo de la corriente, como cualquier otro carácter Enter.

Cómo utilizar el putchar () función

El gemelo malvado de la función getchar () es la función putchar (). Se tiene el propósito de dar patadas a un solo carácter a la salida estándar. Aquí está el formato:

#include int putchar (int c) -

Para hacer putchar de trabajo (), lo envía a un personaje, la colocación de un carácter literal en el paréntesis, como en

putchar ( `v`) -

O puede colocar el valor del código ASCII (un entero) para el personaje en el paréntesis. La función devuelve el valor del carácter que está escrito.

PONIENDO PUTCHAR () TRABAJAR

#include int main () {int ch-printf ("Pulse Intro: ") -getchar () - = ch `H` putchar-(CH) CH = `-putchar I`-putchar (CH) ()`` - retorno (0) -}

Este trozo de código utiliza la función getchar () para hacer una pausa en el programa. La instrucción de la línea 8 de espera para la entrada. La entrada que ha recibido no es con acumulación que no necesita ser. El compilador no se queja si usted no mantiene el valor devuelto por la función getchar () (o de cualquier función).

Video: Programación en C++ 02 - Entrada y salida estándar

En las líneas 9 a 12, la función putchar () muestra el valor de la variable ch un carácter a la vez.

Los valores de un solo carácter se asignan a la ch variable en las líneas 9 y 11. La asignación funciona igual que la asignación de valores, aunque se especifican caracteres individuales, entre comillas simples. Este proceso sigue funcionando, a pesar de ch no es un tipo variable de tipo char.

En la línea 13, putchar () muestra un valor constante directamente. Una vez más, el carácter debe ir entre comillas simples.

Ejercicio 5: Crear un nuevo proyecto, ex0705, utilizando el código fuente mostrado en la Poniendo putchar () trabajar. Generar y ejecutar el programa.

Una cosa rara de la salida es que el carácter final no es seguido por un salto de línea. Que la producción puede parecer extraño en una pantalla de texto, por lo que:

ejercicio 6: Modificar el código fuente del Ejercicio 5 de manera que un carácter adicional se emite después de la! personaje (el carácter de nueva línea).

Artículos Relacionados