Pero como lo aplico a un programa para pueda entrar al programa. Como ven la contraseña se guarda en un vector (arreglo) y tengo que comparar cada espacio de ese vetor con el usuario. Como lo hago??
Código C:
Ver original
| |||
Formulario de usuario y password Hola! Necesito de su ayuda, tengo este código para usar en los password. Pero como lo aplico a un programa para pueda entrar al programa. Como ven la contraseña se guarda en un vector (arreglo) y tengo que comparar cada espacio de ese vetor con el usuario. Como lo hago??
Código C:
Ver original |
| |||
Respuesta: Formulario de usuario y password "tengo que comparar cada espacio de ese vetor con el usuario". Cómo es eso? Explicate bien. En definitiva, para comparar dos vectores de tipo char usa la función estándar strcmp(). Y por cierto, conio no es estándar. |
| |||
Respuesta: Formulario de usuario y password lo siento, si, me explique mal. De hecho esa funcion es la que necesito, pero no se como se utiliza para comparar La contraseña que esta en el codigo, y la contraseña que el usuario ingresa |
| |||
Respuesta: Formulario de usuario y password Cita: pero no se como se utiliza para comparar La contraseña que esta en el codigo, y la contraseña que el usuario ingresa Cita: para comparar dos vectores de tipo char usa la función estándar strcmp() |
| |||
Respuesta: Formulario de usuario y password yo lo tengo!!!
Código C:
Ver original Pero hay un error, por ejemplo, ingreso la contraseña y usuario correcto (el usuario correcto es "kattia" y contraseña "programacion") Funciona de maravilla. Pero que pasa si ingreso un usuario o contraseña incorrecta y luego los ingreso correctamente, segun el programa no te los toma como buenos. Y yo se lo que pasa, que el vector "passIngresado" se queda con los datos que se ingresaron por primera vez, y los va acumulando cuantas veces el usuario lo repita. Entonces como hago para dejar en blanco totalmente el vector, probe usando un ciclo for, asi: for(int g=0, g<i; g++) passIngresado='\0'; pero lo que hace es que lo llena de 0, como hago para que el vector quede como fue declarado, sin nada?? o otra forma de hacerlo. PD: el for for(int y=0; y<i; y++) { printf("%d\n",passIngresado[y]); } solo esta para ver lo que tiene incluido el vector. |
| |||
Respuesta: Formulario de usuario y password Cita: Hola! si bien el for esta solo para imprimir lo q tiene, y ya que estas usando cadenas, lo ideal seria que en la condicion compares con el caracter '\0' que indica el fin de una cadena(sino me equivoco todas las funciones de manejo de string utilizan el '\0' en las condiciones de su implementacion)for(int y=0; y<i; y++) { printf("%d\n",passIngresado[y]); } Cita: Se acumula debido a que la variable "i" nunca se vuelva a inicializar en 0, por lo tanto va incrementando permanentemente a medida que se ejecuta el do-while externo. Pone a cero "i" ni bien comienza el bucle y los va acumulando cuantas veces el usuario lo repita. Saludos PD: para simular una cadena vacia solo necesitas poner el fin de cadena en la primera posicion del arreglo:
Código C:
Ver original |
Etiquetas: |