Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Linguagem C

C - Entrada e Saída


Quando dizemos Entrada , significa alimentar alguns dados em um programa. Uma entrada pode ser fornecida na forma de um arquivo ou da linha de comando. A programação C fornece um conjunto de funções internas para ler a entrada fornecida e alimentá-la ao programa conforme a necessidade.

Quando dizemos Saída , significa exibir alguns dados na tela, na impressora ou em qualquer arquivo. A programação em C fornece um conjunto de funções internas para exibir os dados na tela do computador, bem como salvá-los em arquivos de texto ou binários.

Os arquivos padrão


A programação C trata todos os dispositivos como arquivos. Assim, dispositivos como a tela são endereçados da mesma maneira que os arquivos e os três arquivos a seguir são abertos automaticamente quando um programa é executado para fornecer acesso ao teclado e à tela.
Arquivo padrão Ponteiro de arquivo Dispositivo
Entrada padrão stdin Teclado
Saída padrão stdout Tela
Erro padrão stderr Sua tela

Os ponteiros de arquivo são os meios para acessar o arquivo para fins de leitura e gravação. Esta seção explica como ler os valores da tela e como imprimir o resultado na tela.

As funções getchar() e putchar()


O int getchar(void) A função lê o próximo caractere disponível na tela e o retorna como um inteiro. Esta função lê apenas um caractere por vez. Você pode usar este método no loop caso queira ler mais de um caractere da tela.

O int putchar(int c) A função coloca o caractere passado na tela e retorna o mesmo caractere. Esta função coloca apenas um caractere por vez. Você pode usar esse método no loop caso queira exibir mais de um caractere na tela. Verifique o seguinte exemplo -
#include <stdio.h>
int main( ) {

   int c;

   printf( "Enter a value :");
   c = getchar( );

   printf( "\nYou entered: ");
   putchar( c );

   return 0;
}

Quando o código acima é compilado e executado, ele espera que você insira algum texto. Quando você insere um texto e pressiona enter, o programa prossegue e lê apenas um único caractere e o exibe da seguinte forma -
$./a.out
Enter a value : this is test
You entered: t

As funções gets() e puts()


O char *gets(char *s) função lê uma linha de stdin no buffer apontado por s até uma nova linha de terminação ou EOF (Fim do Arquivo).

O int puts(const char *s) função escreve a string 's' e 'a' à direita da nova linha para stdout .

OBSERVAÇÃO: Embora tenha sido descontinuado o uso da função gets(), em vez de usar gets, você deseja usar fgets().
#include <stdio.h>
int main( ) {

   char str[100];

   printf( "Enter a value :");
   gets( str );

   printf( "\nYou entered: ");
   puts( str );

   return 0;
}

Quando o código acima é compilado e executado, ele espera que você insira algum texto. Quando você insere um texto e pressiona enter, o programa prossegue e lê a linha completa até o final e a exibe da seguinte forma -
$./a.out
Enter a value : this is test
You entered: this is test

As funções scanf() e printf()


O int scanf(const char *format, ...) função lê a entrada do fluxo de entrada padrão stdin e verifica essa entrada de acordo com o formato forneceu.

O int printf(const char *format, ...) função grava a saída no fluxo de saída padrão stdout e produz a saída de acordo com o formato fornecido.

O formato pode ser uma string constante simples, mas você pode especificar %s, %d, %c, %f, etc., para imprimir ou ler strings, integer, character ou float respectivamente. Existem muitas outras opções de formatação disponíveis que podem ser usadas com base nos requisitos. Vamos agora prosseguir com um exemplo simples para entender melhor os conceitos -
#include <stdio.h>
int main( ) {

   char str[100];
   int i;

   printf( "Enter a value :");
   scanf("%s %d", str, &i);

   printf( "\nYou entered: %s %d ", str, i);

   return 0;
}

Quando o código acima é compilado e executado, ele espera que você insira algum texto. Quando você insere um texto e pressiona enter, o programa prossegue e lê a entrada e a exibe da seguinte forma -
$./a.out
Enter a value : seven 7
You entered: seven 7

Aqui, deve-se notar que scanf() espera entrada no mesmo formato que você forneceu %s e %d, o que significa que você deve fornecer entradas válidas como "string integer". Se você fornecer "string string" ou "integer integer", ele será considerado como uma entrada incorreta. Em segundo lugar, ao ler uma string, scanf() para de ler assim que encontra um espaço, então "isto é teste" são três strings para scanf().

Linguagem C

  1. Palavras-chave e identificadores C#
  2. Entrada e saída básica em C#
  3. Classe e objeto C#
  4. Entrada/saída básica de C++
  5. C Entrada Saída (E/S)
  6. Entrada, Saída e Importação do Python
  7. Entrada e Saída Java Basic
  8. Entrada/saída básica de C++:Cout, Cin, Cerr Exemplo
  9. C - Constantes e Literais
  10. C# - Constantes e Literais