Esse semestre iniciamos com Programacao Orientada a Objetos na faculdade, eu ja sabia algum ou outro conceito basico do tema, porem agora preciso me aprofundar, afinal alem de ser uma disciplina de alto nivel de concentracao, e necessario tambem costume para poder conseguir abstrair corretamente todos os conceitos.Para os estudos da faculdade estamos estudando C++, o que eu considero perfeito, apesar de nao ser a maior "onda" do mercado (como Java), e uma linguagem muito solida e e interessante, onde podemos trabalhar em qualquer plataforma e com alto desempenho. Iniciei minhas pesquisas e aos poucos estou estudando cada vez mais sobre a linguagem, orientacao a objetos e tambem modelagem de dados.Para iniciar os estudos eu indico (apesar de algumas ressalvas) os artigos da Wikipedia, mesmo com a fama de nao serem muito consistentes eles podem proporcionar pelo menos uma breve definicao sobre cada conceito.Tambem aconselho muita leitura sobre o tema, uma apostila interessante que estou lendo e essa aqui do Professor Andre Duarte Bueno, onde e abordado desde os conceitos de orientacao a objetos, passando por UML e chegando a C++.Outro material que vai me dar muito apoio aos meus estudos e o Guia de Consulta Rapida de C++ do Professor Joel Saade, muito completo, abordando todos os conceitos da linguagem e com muitos, mas muitos mesmo, exemplos. O que facilita os estudos. Eu comprei ele aqui no site da Linux Mall, onde tem varios outros livros.Conforme o decorrer deste semestre vou seguir postando diversos posts sobre Programacao Orientada a Objetos, modelagem de dados e principalmente linguagem C++. Estes posts vao servir para ajudar a fixar meus conhecimentos e tambem auxiliar quem tambem busca referencias e conteudo para estudo. A funcao scanf serve para ler a entrada padrao (teclado), podendo ler inteiros, floats, caracteres e strings. Para ler uma string usa-se a seguinte sintaxe:scanf("%s", variavel);O problema e que ao ler uma string com mais de uma palavra (com espacos) ela para de ler armazenando apenas a primeira palavra. Um exemplo seria a string "Minha casa", caso usemos a sintaxe acima ele apenas armazenara a palavra "Minha", parando ao encontrar o espaco.O que podemos fazer para corrigir este erro e forcar o scanf ler a string ate encontrar o [enter], para isto devemos inserir o seguinte codigo:scanf("%[^\n]s", variavel);Isto fara o scanf ler ate encontrar o enter, ao fazer isto ele jogara o enter para a proxima entrada, fazendo com que ele pule o proximo scanf. Para isto basta limparmos o buffer logo apos a entrada, apagando qualquer "sujeira" deixada pelo teclado:scanf("%[^\n]s", variavel);setbuf(stdin, NULL);Com isto voce conseguira ler normalmente nomes com mais de uma palavra.Se voce tiver mais alguma sugestao de como fazer isto (na linguagem C existem mil formas funcionais de se fazerem as coisas) deixe um comentario explicando.UPDATE:Voce tambem pode limitar os caracteres que podem ser lidos, criando assim uma forma tambem do scanf ler todos os caracteres e o espaco, basta digitar:scanf("%[a-z A-Z]s");Desta forma ele tambem ira ler todas as letras do alfabeto (ira ignorar os numeros digitados tambem). Primeiro vou contar uma historia muito comum:"Era uma vez um usuario do