Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Estou fazendo um código em C, aparentemente nenhum erro, pelo menos a sintaxe e o copilador não aponta isso.
Eu fiz uma função para ler um string e atribuir a uma variável, até aí funciona, porem quando usar a mesma função em outra variável, o valor da última variável é aplicado a todas lidas anteriormente.
o código é este:
#include <stdio.h>
#include <string.h>
char* ler_str(int);
int main(){
int flag;
char *frase1, *frase2;
printf("\nprimeiro frase\n");
frase1 = ler_str(999);
printf("\nmostar frase1: %s\n",frase1);
printf("\nsegunda frase\n");
frase2 = ler_str(998);
printf("\nmostar frase2: %s\n",frase2);
printf("\n--------------------------\n");
printf("\nmostar frase1: %s\n",frase1);
printf("\nmostar frase2: %s\n",frase2);
return 0;
}
char* ler_str(int tam){
fflush(stdin);
char frase[tam];
scanf("%[^\n]s",frase);
return frase;
}
Ficarei grato se alguém me der uma luz.
Carregando comentários...