Leitura de String
Publicado por Fagner Amaral de Souza Candido 23/02/2008
[ Hits: 9.778 ]
Homepage: https://github.com/fagnercandido
Sempre que precisamos ler uma string via teclado é uma dificuldade. O código que disponibilizo tenta sanar este inconveniente.
Por alocação dinâmica, ele vai realocando caracter por caracter para compor a string.
Qualquer dúvida, crítica ou afins postem.
Desde já agradeço,
Abraços
// Autor : Fagner Candido /* Sintese Objetivo: Ler uma String Entrada : uma String. Saida : A String Data : 30/01/2008 */ #include <stdio.h> #include <stdlib.h> int main() { char fraseInicial; char *fraseFinal; int contadorLaco=0, contadorAlocacao = 2; if((fraseFinal = (char *)malloc(contadorAlocacao*sizeof(char *))) == NULL) { printf("ERRO NA ALOCACAO!"); getchar(); exit(1); } printf("Digite o Nome: "); fraseInicial=getchar(); /* Dentro do laço é feita a leitura caracter a caracter e à realocação, para não haver desperdício de espaço. */ while(fraseInicial!='\n') { fraseFinal[contadorLaco]=fraseInicial; contadorLaco++; contadorAlocacao++; fraseFinal = realloc(fraseFinal, contadorAlocacao*sizeof(char)); fraseInicial=getchar(); } fraseFinal[contadorLaco]='{FONTE}'; printf(fraseFinal); }
Ordenar um lista estática sequencial básica (bubblesort)
Calculando o número de Neper !
3 EP - Poli USP - Angry Birds (angry bixos)
Derrubando SyGate Profissional Firewall !
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Overclocking Permanente para Drastic no Miyoo Mini Plus
Problemas de chaves (/usr/share/keyrings) no Debian
Converter os repositórios Debian para o novo formato com as chaves
Problema com o Centro de Aplicativos Ubuntu 25.04 (2)
E aí? O Warsaw já está funcionando no Debian 13? (8)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (6)