elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [C] Lectura de caracter
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [C] Lectura de caracter  (Leído 1,467 veces)
n-utz

Desconectado Desconectado

Mensajes: 165

Babylon es el vampiro!


Ver Perfil
[C] Lectura de caracter
« en: 13 Septiembre 2016, 01:52 am »

[SOLUCIONADO]: Tenia cargado el buffer de alguna manera, entonces cuando llegaba el scanf, agarraba cualquier caracter, la solucion fue poner, antes del scanf, un getchar() para que se encargue de eso.

Buenas noches, acá una vez más odiando C y el scanf, a ver si me dan una mano.

Hace tiempo postee que tenía problemas con leer caracteres, tenía dos variables de caracteres, que leían solo una vez durante el programa con el scanf, me leía el problema y el segundo lo ignoraba, lo solucioné gracias a un colega de acá que me dijo que implemente el getchar(), para el retorno si no me equivoco.

Ahora, tengo un problema similar, la diferencia es que meto un scanf que lee caracteres dentro de un for, por lo tanto va a tener que leer caracteres diferentes cuantas veces como diga el usuario.

El problema es que no lee ni la primera vez, y no entiendo por qué. Acepto cualquier consejo, si es necesario reemplazar scanf por otra función lo hago, pero intenté con getchar y tampoco puedo, les dejo las líneas del problema..

Código:
int main()
{
    char abc[26]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
    int cc, i, j, num;
    char aux;

//LECTURA DE OTRAS VARIABLES COMO CC, Y DECLARACION DE COD

for(i=0;i<cc;i++){
        printf("Ingrese el %d caracter: ", i);
        scanf("%c", &aux);
        getchar();
        printf("\n%c", aux);
        for(j=0;j<26;j++){
            if(abc[j]==aux)aux=abc[j];
        }
        cod[i]=aux;
    }


« Última modificación: 13 Septiembre 2016, 03:00 am por n-utz » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines