[Resolvido] Concatenação de CHAR*
Boa tarde pessoal.
Estou fazendo um Chat pela porta Serial e tive um probleminha com a concatenação de strings.
Eu já estou pensando até em fazer uma função para fazer isso.
Isolei a parte do erro, pra ficar mais fácil a compreensão.
#include <stdio.h>
#include <windows.h> /Biblioteca do win para acessar a SERIAL /
#include <conio.h> / funções como kbhit /
int main (int argc, char * args[])
{
char BufferEnvia[100] = ""; //Para armazenar a string a ser enviada.
int caracterEscrito, eu;
char *caracter;
char *resposta;
int roda = 1;
while(roda == 1)
{
/*Escrita*/
if(kbhit())
{
/*CASO tecla apertada = ESC*/
if ((caracterEscrito = getch()) == '\x1B')
{
roda = 0;
}
/*CASO tecla apertada não for ESC nem ENTER*/
else if (caracterEscrito != 13)
{
if(!eu)
{
printf("Eu: ");
eu = 1;
}
printf("%c",caracterEscrito);
/---------------------------------------------------------/
/*Nao consigo fazer esta parte funcionar.
*Vejamos bem que o "caracterEscrito" tem que vir em ASCII para poder descobrir se é [ESC] ou [ENTER]
tentei usar o GetChar(), mas daí o erro dava na hora de comparar /
strcpy(caracter, (char*)caracterEscrito);
printf("Copiou");
resposta = strcat(BufferEnvia, caracter);
printf("concatenou");
/*Preciso ir juntando em uma string só para depois enviar a mesma pela porta serial
*esta dentro do while porque o programa fica verificando se tem algo pra ler na porta sempre*/
/---------------------------------------------------------/
}
/CASO tecla apertada == ENTER/
else
{
printf("\n");
eu = 0;
//strcat(BufferEnvia, "\0");
}
}
}
printf("%s",BufferEnvia);
system("pause");
}
agradeço qualquer ajuda
Abraços
Discussão (9)
Carregando comentários...