Ao trabalhar com entrada do usuário, é essencial garantir que os dados inserissem alinhados com o formato esperado. Nos casos em que os valores inteiros são necessários, você pode encontrar cenários em que os usuários insinam inadvertidamente caracteres não numéricos. Aqui está uma quebra detalhada da implementação:
int x; CIN >> x; if (cin.fail ()) { // não um int. }
int x; cin >> x; if (cin.fail()) { // Not an int. }
Essa abordagem permite determinar se a entrada é um número inteiro ou não. Caso contrário, você pode tomar as medidas apropriadas, como solicitar ao usuário reentrar um número inteiro válido. while (cin.fail ()) { cin.clear (); Cin.ignore (256, '\ n'); CIN >> x; }
a função cin.clear () limpa o sinalizador Failbit, enquanto cin.ignore (256, '\ n') pula os caracteres de entrada restantes até o primeiro caractere novo ou 256 caracteres, o que se não vier. Inteiro. No entanto, essa abordagem pode não ser adequada para os casos em que os números de ponto flutuante são esperados. Caso contrário, você pode lidar com a situação de acordo, garantindo que apenas os valores inteiros válidos sejam aceitos em seu programa.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3