Ver Mensaje Individual
  #2 (permalink)  
Antiguo 02/04/2014, 02:51
DvNe
 
Fecha de Ingreso: octubre-2012
Mensajes: 37
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: error funcion gets

El problema con tu función es que al hacer gets, además del carácter que introduces estas intentando también almacenar (inconscientemente) el salto de linea ("\n").

Por lo que estas intentando almacenar dos caracteres en un puntero a char con espacio para un solo carácter

La solución que puedo darte, es que en vez de usar char*, definas la variable como:

char c1[2];

Otra solución puede ser usar otra función como getchar:

Código C:
Ver original
  1. #include <stdio.h>
  2.  
  3. int main() {
  4.   //  char c[2];
  5.   int c;
  6.  
  7.   c = getchar();
  8.   putchar(c);
  9.   return 0;
  10. }