Olá, pessoal.
Cá estou, a passos de tartaruga, mas vou indo.
Cheguei na quarta auto-avaliação da apostila e resolvi os exercícios propostos, mas quando decidi criar um outro programinha baseado no que vi até aqui, me deparei com o seguinte erro:
senha.c:9: error: incompatible types in assignment
Está dando erro quando eu tento clonar o conteúdo da senha original.
O código do exercício é este:
#include<stdio.h>
int main()
{
char senhao[11],senham[11];
int x;
printf("\nDigite uma senha em maiusculas");
printf("\nuse no maximo dez caracteres: ");
gets(senhao);
senham=senhao;
for(x=0;senham[x]!='\0';x=x+1)
{
if(senham[x]=='O')
{
senham[x]='0';
}
if(senham[x]=='I')
{
senham[x]='1';
}
if(senham[x]=='Z')
{
senham[x]='2';
}
if(senham[x]=='E')
{
senham[x]='3';
}
if(senham[x]=='A')
{
senham[x]='4';
}
if(senham[x]=='S')
{
senham[x]='5';
}
if(senham[x]=='G')
{
senham[x]='6';
}
if(senham[x]=='T')
{
senham[x]='7';
}
if(senham[x]=='B')
{
senham[x]='8';
}
}
printf("\n\nSenha original: %s",senhao);
printf("\nSenha modificada: %s\n\n",senham);
return(0);
}
Outra coisa que me chamou a atenção é que se eu comentar a linha 9 o programa funciona, mesmo estando a variável da senha modificada (e não aquela captada pelo gets) no loop. Alguém me explica o que acontece?
E esse alerta?
auto_avaliacao_004-b.c:(.text+0x32): warning: the `gets' function is dangerous and should not be used.