Métodos de usar CIN.Get () em C++
Existem duas maneiras de usar CIN.pegar() função em c ++:
1: Leitura de personagem único usando CIN.Get () em C++
Em C ++, você pode ler e salvar caracteres específicos no buffer de entrada usando o CIN.pegar() método. Pertence ao “iostream”Classe como uma função de membro. Com o auxílio do espaço em branco e das quebras de linha, a função pode ler um único caractere do fluxo de entrada e salvá -lo em uma variável ou uma matriz.
A sintaxe básica para CIN.pegar() é:
CIN.get (char_variable)
Isso levará um caractere do fluxo de entrada, leia, salve -o e depois atribua -o ao char_variable. Você pode usá -lo em combinação com loops e matrizes para ler vários caracteres.
#incluir
usando namespace std;
int main ()
Nome do char, nome1, nome2;
cout << "Type Name: " << endl;
CIN.obtenha (nome);
CIN.get (nome1);
CIN.get (nome2);
cout <<">"<< name<<"\n";
cout <<">"<< name1<<"\n";
cout <<">"<< name2<<"\n";
retornar 0;
No exemplo acima, estamos criando três variáveis: nome, nome1 e nome2 e recebendo entrada do usuário. O CIN.Função Get () é então usado para pegar os caracteres do fluxo de entrada um por um e atribuí -los às variáveis. Apenas uma variável é lida por CIN.pegar() função de uma vez.
Saída
2: Lendo vários caracteres usando CIN.Get () em C++
Você também pode usar o CIN.pegar() função para ler vários caracteres do fluxo de entrada. Isso pode ser feito especificando o buffer de entrada e o número máximo de caracteres para ler a partir do fluxo de entrada.
A sintaxe básica para CIN.pegar() Para ler vários caracteres em C ++, é dado abaixo:
CIN.getLine (buffer de entrada, tamanho do buffer max)
Os caracteres lidos no buffer de fluxo de entrada são armazenados em uma matriz chamada buffer de entrada, e o número máximo de caracteres que podem ser lidos antes que o processo de leitura termine seja indicado pelo tamanho do buffer max.
Aqui está um exemplo de um código simples:
#incluir
usando namespace std;
int main ()
nome de char [15];
cout << "Type Name: " << endl;
CIN.obtenha (nome, 15);
cout << name;
retornar 0;
No código acima, criamos uma variável do tipo de caractere chamada nome. Além disso, o tamanho da matriz de caracteres, que neste caso é 15, foi especificado. O cout () A função é então usada para produzir uma mensagem solicitando ao usuário que forneça o nome. O nome foi então obtido usando o CIN.pegar() método e o comprimento da corda era 15. Assim, a saída também exibirá o valor da string com um tamanho de 15 quando imprimirmos o nome da variável como saída.
Saída
Por que precisamos de CIN.Get () em C++
O CIN () A função é frequentemente usada para ler dados de entrada do teclado ou entrada padrão. No entanto, quando o NIN () é usado para receber a entrada do usuário, ele termina quando encontra um personagem de espaço em branco, como espaço, newline ou guia. O Função CIN () Assim, pode causar problemas quando usado em um bloco de código que precisa aceitar entradas contendo espaço em branco.
Este problema pode ser efetivamente resolvido usando o CIN.Método Get (), que permite ler dados de entrada até um delimitador definido, incluindo caracteres de espaço em branco que o CIN () a função normalmente desconsideraria. Qualquer personagem, como uma nova linha ou um personagem específico especificado pelo programador, pode servir como esse delimitador.
Outra diferença crucial entre CIN () e CIN.pegar() é que o último não joga fora o personagem de nova linha no final de uma linha de entrada do usuário. Assim, é fortemente aconselhado a ler em dados usando CIN.pegar() e a Obter linha() método juntos.
Há uma restrição com o CIN.pegar() Função: ele só pode ler os personagens até o personagem Newline ou a quantidade especificada de caracteres, o que vier primeiro. Como resultado, se você tentar ler uma linha de texto mais longa que o buffer permite, ele será truncado. Use o Obter linha() método para evitar isso.
Conclusão
O CIN.pegar() A função em C ++ é usada para ler e salvar caracteres específicos do fluxo de entrada. Ele pode ler caracteres únicos e linhas inteiras de texto e continuar processando caracteres até que a entrada seja concluída. Apesar de certas desvantagens, é um recurso importante para os programadores C ++.