Merhabalar,
Proje ödevimle ilgili küçük bir sorunum var. Aşağıdaki fonksiyonda girilen bir komutun ilk kelimesini analiz ediyorum. Daha sonra ilgili fonksiyonlara yolluyorum. Fakat bu fonksiyonlardan dönüşte program else kolunada giriyor. Yani hem else if lerden birine yada if e giriyor sonra üstüne birde else koluna giriyor program. Yardımcı olabilecek var mı?
void komut_kontrol(){
char tmp[30],tmp2= ;
i=0;
while(komut!=tmp2 && komut!=NULL){
tmp=komut;
i++;
}
tmp[i]=NULL;
if(strcmp(tmp,"ekle")==0){
ekle();
}
else if(strcmp(tmp,"goruntule")==0) {
goruntule();
}
else if(strcmp(tmp,"olustur")==0){
olustur();
}
else if(strcmp(tmp,"sil")==0){
sil();
}
else{
system("cls");
printf("Uyari: Hatalimi giris yaptiniz..!\\n\\n");
}
}
Yukarıdaki fonksiyonu çağırdığım kısım burası:
do{
komut=NULL;
komut=(char *)malloc(50*sizeof(char));
ana_menu();
if(strcmp(komut,"yardim")!=0 && strcmp(komut,"cikis")!=0){
komut_kontrol();
}
else if(strcmp(komut,"yardim")==0){
yardim_menu();
}
}while(strcmp(komut,"cikis")!=0);ana_menu() içerisinde komut dizisini tekrardan alıyorum.