Código:
cuando lo compilo (con el gcc) me da esto#include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> int main(void) { char original[512]; char *clave; char *clave2; int ok; //para que sea MD5 SALT debe comenzar con $1$ const char *const salt = "$1$"; printf("Ingrese el texto a encriptar \n"); fgets(original, sizeof(original), stdin); original[strlen(original) - 1] = '\0'; clave = crypt(original, salt); puts(clave); printf("Ingrese el texto a comparar \n"); fgets(original, sizeof(original), stdin); original[strlen(original) - 1] = '\0'; clave2 = crypt(original, salt); puts(clave2); ok = strcmp(clave,clave2)==0; puts(ok ? "Claves Iguales" : "Claves diferentes"); return ok ? 0 : 1; }
Código:
si bien he buscado e intentado cambiarlo no se qué problema tienen esas dos asignaciones (clave y clave2).encriptar.c:18: warning: assignment makes pointer from integer without a cast encriptar.c:23: warning: assignment makes pointer from integer without a cast
Muchas gracias y saludos