由於在C它似乎是不可能使用開關字符(只有整數)即時通訊嘗試使用if函數作出簡單的提示,問題是在scanf點後該程序總是在此點崩潰puts("Confirmas que quieres borrar[s\\n]")
或「你確定要刪除它嗎?」。無法獲得該功能的工作,程序總是在提示後崩潰
void borrar_peliculas(struct videoclub peliculas[30],int p) {
char titulo_pelicula[30], resp_eliminar;
int k = 0;
puts("\a\nBorrador de peliculas");
puts("\nDime el titulo de la pelicula a ser borrada\n");
scanf("%30s", titulo_pelicula);
for (k = 0;k < p ;k++) {
if (strcmp(peliculas[k].nombre,titulo_pelicula) ==0) {
puts("\nConfirmas que quieres borrar[s\\n]\n");
fflush(stdin);
scanf("%c", resp_eliminar);
if(resp_eliminar=='s') {
peliculas[k].id = 0;
strcpy(peliculas[k].nombre," ");
strcpy(peliculas[k].categoria," ");
strcpy(peliculas[k].nom_actor," ");
strcpy(peliculas[k].ape_actor," ");
peliculas[k].nota = 0;
break;
}
if(resp_eliminar=='n') {
puts("\a\nSaliendo\n");
break;
}
} else {
puts("\nNo encontrado\n");
}
}
}
可以在'char'上'切換'。你以前怎麼做? – jwodder 2014-08-28 21:24:08
請等待其他人閱讀您的代碼之前排除您的縮進。 – 2014-08-28 21:24:48
我用過'case'或case'n': – 2014-08-28 21:25:04