Formatar strings em C (RG, telefone, CEP etc)
Publicado por Eduardo (última atualização em 15/10/2009)
[ Hits: 21.091 ]
Download Mascara para string.cpp
Função em C para "formatar" suas strings antes de gravá-las em algum lugar ou simplesmente mostrar na tela. Está função é necessária quando você quer formatar um RG, telefone, CEP etc.
Ex.: O usuário entra com o RG 123456789. Vamos supor que antes de gravar no banco ou no arquivo você queira colocar traços e pontos. Você faria isso:
char RG[] = "123456789";
mascara(RG, "##.###.###-#");
Neste caso terá como saída o seguinte: 12.345.678-9
Obs: Meu objetivo com esse script é somente exemplificar a possibilidade de usar essa função, o aconselhável seria retornar um ponteiro para o programa principal e tal... Enfim, usem a imaginação, melhorem e/ou adaptem esse script da forma que acharem melhor!
Abraços.
#include<stdio.h>
#include<conio2.h> //compilei no dev C++ (Windows), mas aqui basta colocar uma biblioteca equivalente... conio ou ncurses
#include<string.h>
/****** PROTOTIPACÃO ******/
void mascara(char *frase, char formato[]);
/********* Prog principal **********/
int main()
{
char frase[] = "1112345678"; // string qualquer
mascara(frase,"(##) ####-####");
}
/********* Funcão **********/
void mascara(char *frase, char formato[])
{
char aux[100];
int i = 0;
while(*frase)
{
if(formato[i] != '#')
{
aux[i] = formato[i];
i++;
}
else
{
aux[i] = *frase;
frase++;
i++;
}
}
aux[i] = 0;
printf("%s",aux);
getch();
}
Calculo de IMC escrito em linguagem C
METODO DA FALSE POSIÇÃO E BISSEÇÃO em "C"
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Conky, alerta de temperatura alta (10)
Assisti Avatar 3: Fogo e Cinzas (3)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









