Por que %c é usado em C?
Assim como qualquer outra linguagem de programação, C também possui uma sintaxe fixa que precisa ser seguida para criar programas. A sintaxe básica de C é que os usuários devem incluir o arquivos de cabeçalho C primeiro, quais são
int principal ( vazio ) {
}
E um comando de impressão é usado para exibir a saída. Por exemplo, vamos tentar imprimir uma carta k como uma saída e para isso, use o comando abaixo escrito dentro da função principal:
printf ( '%d' , 'k' ) ;
Na saída, você pode ver que, em vez de letra k, um número é exibido como uma saída. Confuso?
Agora vamos entender esse conceito de por que um número é impresso em vez do caractere k , portanto, a resposta é que um computador é uma máquina que trabalha com números, de modo que cada caractere ou letra tem um número de máquina equivalente (código ASCII). Por exemplo; no exemplo acima, o número equivalente da máquina para k é 107 . Se um usuário usa %d com um caractere, o programa exibirá o código ASCII do caractere e não o caractere original.
Como %d , o %c é usado para exibir o caractere original. Agora vamos executar o mesmo comando acima para imprimir k apenas substitua %d com %c , como mostrado abaixo:
printf ( '%c' , 'k' ) ;
Agora, na saída, você pode ver claramente que, em vez de um número, uma letra k em si é impresso. Assim, sempre que os usuários quiserem imprimir um caractere, eles podem usar %c dentro do comando de impressão. O %c representa 'personagem' e informa ao compilador que uma saída de caractere é necessária:
Usando %c em Arrays
Agora vamos imprimir uma matriz de caracteres usando %c com um comando de impressão. No programa abaixo, defini um array de 9 caracteres e quero imprimir esses elementos de matriz exatos, um por um. Para isso, utilizei um para loop dentro do qual o printf comando está presente junto com %c :
#include#include
int principal ( vazio ) {
Caracteres variedade [ ] = { 'EU' , 'EU' , 'N' , 'EM' , 'X' , 'H' , 'EU' , 'N' , 'T' } ;
para ( int x = 0 ; x < 9 ; x ++ ) {
printf ( '%c' , variedade [ x ] ) ;
printf ( ' \n ' ) ;
}
}
Depois de executar o programa, você pode ver que a saída exibiu o caractere um por um:
Agora mantenha o programa igual e apenas substitua %c com %d dentro do comando printf e observe a diferença na saída:
#include#include
int principal ( vazio ) {
Caracteres variedade [ ] = { 'EU' , 'EU' , 'N' , 'EM' , 'X' , 'H' , 'EU' , 'N' , 'T' } ;
para ( int x = 0 ; x < 9 ; x ++ ) {
printf ( '%d' , variedade [ x ] ) ;
printf ( ' \n ' ) ;
}
}
Agora, na saída, você pode ver isso apenas alterando o %c, a saída mudou completamente. Em vez de caracteres, seus códigos ASCII são exibidos:
Conclusão
O %c na linguagem de programação C é usado para representar o personagem. Por exemplo, se os usuários quiserem imprimir um caractere ou uma matriz de caracteres, eles podem simplesmente usar %c com o comando printf para informar ao compilador que a saída é necessária na forma de caracteres. Se %d é usado em vez de %c , a saída mudará completamente e, em vez de exibir a saída do caractere, exibirá o código ASCII de cada caractere.