Con respecto al getchar() ,la tecla intro y la aparente imposibilidad de leer un simple caracter.
Sin duda este es uno de los temas que mas irrita a los noveles C/C++ que intentan exportar sus programas de consola de güindows a unix/gnu-linux.
La librería 'std' (stdio.h) que yo sepa no permite esto, intimamente ligado a la configuración del terminal (o mas exactamente pseudoterminal) que antiguamente solían ser terminales por puerto serie, cosa que en güindows jamas se ha visto(yo si lo he visto !jajaja!), por lo que digamos que en unix/gnu-linux la cosa es mas complicada(ver comando 'stty').
La forma natural de resolver esto es usando las 'curses', pero para un novel(o incluso para un no-novel) es matar moscas a cañonazos.
#include
#include
EsperaTecla()
{
struct termios mt1,mt2;
tcgetattr(0,&mt1);
cfmakeraw ( &mt2 );
tcsetattr(0,TCSANOW,&mt2);
getchar();
tcsetattr(0,TCSANOW,&mt1);
}
Prueba esto.
Salud.