Course Hive
Search

Welcome

Sign in or create your account

Continue with Google
or
Curso de Programação C | Como ler uma String com a função scanf()? | aula 129
Play lesson

Curso de Programação C Completo - Curso de Programação C | Como ler uma String com a função scanf()? | aula 129

Domine a Programação C: Do Básico ao Avançado com Exercícios Práticos e Dicas Essenciais!

4.0 (0)
2 learners

What you'll learn

Aprender a instalar e usar a IDE Code Blocks no Windows 10
Compreender como trabalhar com variáveis e funções na linguagem C
Implementar estruturas de dados como listas, filas e pilhas em C
Desenvolver habilidades para manipular strings e arquivos em C

This course includes

  • 77.5 hours of video
  • Certificate of completion
  • Access on mobile and TV

Summary

Keywords

Full Transcript

Cupons para meus cursos na Udemy https://wagnergaspar.com/cupons_udemy/ Uma string pode ser lida do teclado facilmente com a função scanf(), mas há dois detalhes que devem ser levados em conta. O primeiro é que para ler uma string fazemos uso do %s. O segundo é que, até o momento, sempre utilizamos o operador & na frente do nome da variável. Isso é necessário porque a função recebe o endereço de memória onde será salvo o dado lido. Contudo, como veremos mais a frente em nosso curso quando formos estudar ponteiros, o nome de um vetor já é um ponteiro. Assim, não devemos colocar o operador & na frente do nome da variável PARA LER UMA STRING, assim: char palavras[100]; scanf("%s", palavras); Ao testar esse código algumas vezes você perceberá que será lido apenas a primeira palavra. Esse é o funcionamento padrão da função scanf() para a leitura de texto, é lido até o primeiro espaço. Outro problema que pode ocorrer é que, por padrão, a função scanf() não verifica o tamanho do vetor. Assim, se o vetor tem tamanho 20 mas o usuário digita um texto com 40 caracteres, serão ocupadas as 20 posições do vetor, mas também serão ocupadas as 20 posições seguintes (lembra que eu disse que um vetor é sequencial na memória?) que não pertencem ao nosso programa. Para que isso não ocorra, podemos escrever a função scanf() assim: char palavras[100]; scanf("%100[^\n]", palavras); O número após a o sinal de % é o tamanho do nosso vetor, ou seja, a quantidade máxima de caracteres que podem ser lidos. Os caracteres entre o par de colchetes altera o funcionamento padrão da função para ler tudo que for digitado ATÉ que o ENTER seja pressionado. Código disponível em: https://wagnergaspar.com/

Course Hive

Continue this lesson in the app

Install CourseHive on Android or iOS to keep learning while you move.

Related Courses

FAQs

Course Hive
Download CourseHive
Keep learning anywhere