Witam, otóż mam następujący problem. Chciałbym wczytywać do bufora z stdin komendy i potem porównywać z wzorcem. Np użytkonik wpisuje start, program startuje, exit - wylacza sie itd. Użyłem do tego funkcji getlin w pętli i za każdym razem porównuje funkcją strstr. Wszystko fajnie tylko gdy użytkownik wpisze powiedzmy AAAAA a następnie, coś krótszego to końcówka będzie z poprzedniej komendy tj :
AAAAA -> AAAAA
BB -> BBAAA
dodam że po każdym wywołaniu mam free( bufor) ; bufor = NULL;
char* line =NULL;
while(1)
{
printf(">");
getline(&line, &sizecommand, stdin); // pobranie komendy
if(strcmp(line, "startup") == 0)
{
printf("startup \n");
}
free(line); line = NULL;
}
czy robię coś źle , czy po prostu tak jest i muszę to zrobić inaczej? Proszę o pomoc.Pozdrawiam