Entrada / saída básica em C++
C++ vem com bibliotecas que nos fornecem muitas maneiras de realizar entrada e saída. Em C++, a entrada e a saída são realizadas na forma de uma sequência de bytes ou mais comumente conhecida como fluxos .
- Fluxo de entrada: se a direção do fluxo de bytes for do dispositivo (por exemplo, teclado) para a memória principal, esse processo é chamado de entrada.
- Fluxo de saída: Se a direção do fluxo de bytes for oposta, ou seja, da memória principal para o dispositivo (tela de exibição), esse processo é chamado de saída.
Os arquivos de cabeçalho disponíveis em C++ para operações de entrada / saída são:
- iostream : iostream significa fluxo de entrada-saída padrão. Este arquivo de cabeçalho contém definições para objetos como cin, cout, cerr etc.
- iomanip : iomanip significa manipuladores de entrada e saída. Os métodos declarados nestes arquivos são usados para manipular fluxos. Este arquivo contém definições de setw, setprecision, etc.
- fstream : Este arquivo de cabeçalho descreve principalmente o fluxo do arquivo. Este arquivo de cabeçalho é usado para lidar com os dados lidos de um arquivo como entrada ou os dados sendo gravados no arquivo como saída.
As duas palavras-chave cout em C++ e cin em C++ são usadas com frequência para imprimir saídas e receber entradas, respectivamente. Esses dois são os métodos mais básicos de entrada e saída de impressão em C++. Para usar cin e cout em C++, é necessário incluir o arquivo de cabeçalho iostream no programa.
Este artigo discute principalmente os objetos definidos no arquivo de cabeçalho iostream, como cin e cout.
- Fluxo de saída padrão (cout) : Normalmente, o dispositivo de saída padrão é a tela de exibição. A instrução C++ cout é a instância da classe ostream. É usado para produzir saída no dispositivo de saída padrão, que geralmente é a tela de exibição. Os dados necessários para serem exibidos na tela são inseridos no fluxo de saída padrão (cout) usando o operador de inserção ( << ).
#include <iostream>
using namespace std;
int main()
{
char sample[] = "GeeksforGeeks";
cout << sample << " - A computer science portal for geeks";
return 0;
}
Saída:
GeeksforGeeks - A computer science portal for geeks
No programa acima, o operador de inserção ( << ) insere o valor da variável de string sample seguido pela string “Um portal de ciência da computação para geeks” no fluxo de saída padrão cout que é então exibido na tela.
- fluxo de entrada padrão (cin) : Normalmente, o dispositivo de entrada em um computador é o teclado. A instrução C++ cin é a instância da classe istream e é usada para ler a entrada do dispositivo de entrada padrão que geralmente é um teclado.
O operador de extração ( >> ) é usado junto com o objeto cin para ler as entradas. O operador de extração extrai os dados do objeto cin que é inserido usando o teclado.
#include <iostream>
using namespace std;
int main()
{
int age;
cout << "Enter your age:";
cin >> age;
cout << "\nYour age is: " << age;
return 0;
}
Entrada :
18
Saída:
Enter your age: Your age is: 18
O programa acima pede ao usuário para inserir a idade. O objeto cin está conectado ao dispositivo de entrada. A idade inserida pelo usuário é extraída de cin usando o operador de extração ( >> ) e os dados extraídos são então armazenados na variável idade presente no lado direito do operador de extração.
- Fluxo de erro padrão sem buffer (cerr) : O cerr C++ é o fluxo de erro padrão usado para gerar os erros. Esta também é uma instância da classe ostream. Como cerr em C++ não é armazenado em buffer, ele é usado quando é necessário exibir a mensagem de erro imediatamente. Ele não tem nenhum buffer para armazenar a mensagem de erro e exibi-la posteriormente.
- A principal diferença entre cerr e cout vem quando você gostaria de redirecionar a saída usando “cout” que é redirecionado para o arquivo se você usar “cerr” o erro não é armazenado no arquivo. (Isso é o que significa un-buffered .. Não pode armazenar a mensagem)
#include <iostream>
using namespace std;
int main()
{
cerr << "An error occured";
return 0;
}
Saída:
An error occured
- buffered standard error stream (clog) : Esta também é uma instância da classe ostream e usada para exibir erros, mas ao contrário de cerr, o erro é primeiro inserido em um buffer e armazenado no buffer até que não seja totalmente preenchido. ou o buffer não é liberado explicitamente (usando flush()). A mensagem de erro também será exibida na tela.
#include <iostream>
using namespace std;
int main()
{
clog << "An error occured";
return 0;
}
Saída:
An error occured
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen="" frameborder="0" height="374" src="https://www.youtube.com/embed/I16GqVWJXKE?feature=oembed" width="665"></iframe>
? list = PLqM7alHXFySGg6GSRmE2INI4k8fPH5qVB
Artigos relacionados :
- cout << endl vs cout << “\ n” em C++
- Problema com scanf() quando há fgets() / gets() / scanf() depois dele
- Como usar getline() em C++ quando há linhas em branco na entrada?
- Cin-Cout vs Scanf-Printf
Este artigo é uma contribuição de Harsh Agarwal . Se você gosta de GeeksforGeeks e gostaria de contribuir, você também pode escrever um artigo usando write.geeksforgeeks.org ou enviar seu artigo para review-team@geeksforgeeks.org. Veja o seu artigo na página principal do GeeksforGeeks e ajude outros Geeks.
Escreva comentários se encontrar algo incorreto ou se quiser compartilhar mais informações sobre o tópico discutido acima.
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva