Le code suivant utilise getchar() pour accepter une ligne d'entrée.Chaîne d'entrée utilisant getchar()
#include <stdio.h>
#include <stdlib.h>
int main()
{
char *rawString = (char *)malloc(200*sizeof(char));
char *rawStringInitial = rawString;
char c;
c=getchar();
while(c!='\n')
{
*rawString=c;
rawString++;
c=getchar();
}
*rawString='\0';
printf("\n[%s]\n",rawStringInitial);
return(0);
}
Tout en tapant, si je presse backspace, ne doit pas être reçu, il aussi par getchar() & stockés à l'emplacement rawString-pointu? Cependant, la sortie affiche simplement la chaîne finale sans caractères spéciaux. Quelqu'un pourrait-il expliquer pourquoi?
Je suis confronté au même problème. Pouvez-vous dire quelle fonction je peux utiliser? – bubble
Cela dépend de la plate-forme que vous utilisez. Si vous utilisez un système * nix, vous pouvez utiliser ncurses. Je ne suis pas sûr de ce que les équivalents seraient dans un environnement Windows moderne. –