0
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>

void numeros (int);
void letras (int);
void mayusculas (int);
void minusculas (int);
void letrastodo (int); //Mayúsuculas y minúsculas
void especiales (int);
void mayusnumeros (int);
void minusnumeros (int);
void mayusminusnumeros (int);
void todo (int); //Todo lo del programa (números, letras...)

void error (void); //Si no seleccionas alguno de los parámetros (función error)

char contrasenia[500]; //Se almacena la contraseña con 500 caracteres
char mayus[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
char minus[] = "abcdefghijklmnopqrstuvwxyz";
char nums[] = "0123456789";
char caracteres[] = "!@#$^&*?´\\_+¿[]{}'¡,;.:-%/()";

int main(int argc, char* argv[]){
    srand(time(NULL));
    int longitud;
    char opcion[4];
    char item[4];
    sscanf(argv[1], "%c", item);
    
    if (strcmp(item, "H")==0 || strcmp (item, "H")==0) error();
    scanf(argv[2], "%c", opcion);
    
    longitud = atoi(item);
if (longitud==0) printf("La longitud no puede ser 0.");



if (argc==3){
    
    
    if (longitud < 5 || longitud < 66){
        
            if ((strcmp(opcion, "all"))==0) todo(longitud);
    if ((strcmp(opcion, "M"))==0) mayusculas(longitud);
    if ((strcmp(opcion, "n"))==0) minusculas(longitud);
    if ((strcmp(opcion, "d"))==0) numeros(longitud);
    if ((strcmp(opcion, "Mn")==0) || (strcmp(opcion, "nM"))==0) letrastodo(longitud);
    if ((strcmp(opcion, "Md"))==0 || (strcmp(opcion, "dM"))==0) mayusnumeros(longitud);
    if ((strcmp(opcion, "md"))==0 || (strcmp(opcion, "dm"))==0) minusnumeros(longitud);
    if ((strcmp(opcion, "mdM")==0) || (strcmp(opcion, "mMd"))==0 || ((strcmp(opcion, "dmM")==0) || (strcmp(opcion, "Mmd"))==0))mayusminusnumeros(longitud);
    }
}
}

Hola. Como podéis ver en el código que os dejo arriba, tengo errores al compilar los punteros de números, letras... que en un futuro me sirven a lo largo del programa, pero como veis no me deja compilar el programa, y además, me da un error de ID returned 1 exit status que no se muy bien a lo que se refiere. Gracias por la ayuda. Si hace falta edito el post y os dejo el código completo, es simplemente para hacer un generador de contraseñas.

ERRORES AL COMPILAR:

- C Compiler: C:\Program Files (x86)\Dev-Cpp\MinGW64\bin\gcc.exe
- Command: gcc.exe "C:\Users\hugol\OneDrive\Escritorio\Programas\password.c" -o "C:\Users\hugol\OneDrive\Escritorio\Programas\password.exe"  -I"C:\Program Files (x86)\Dev-Cpp\MinGW64\include" -I"C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\include" -I"C:\Program Files (x86)\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include" -L"C:\Program Files (x86)\Dev-Cpp\MinGW64\lib" -L"C:\Program Files (x86)\Dev-Cpp\MinGW64\x86_64-w64-mingw32\lib" -static-libgcc
C:\Users\hugol\AppData\Local\Temp\ccoRymWv.o:password.c:(.text+0x75): undefined reference to `error'
C:\Users\hugol\AppData\Local\Temp\ccoRymWv.o:password.c:(.text+0xf2): undefined reference to `todo'
C:\Users\hugol\AppData\Local\Temp\ccoRymWv.o:password.c:(.text+0x113): undefined reference to `mayusculas'
C:\Users\hugol\AppData\Local\Temp\ccoRymWv.o:password.c:(.text+0x134): undefined reference to `minusculas'
C:\Users\hugol\AppData\Local\Temp\ccoRymWv.o:password.c:(.text+0x155): undefined reference to `numeros'
C:\Users\hugol\AppData\Local\Temp\ccoRymWv.o:password.c:(.text+0x18d): undefined reference to `letrastodo'
C:\Users\hugol\AppData\Local\Temp\ccoRymWv.o:password.c:(.text+0x1c5): undefined reference to `mayusnumeros'
C:\Users\hugol\AppData\Local\Temp\ccoRymWv.o:password.c:(.text+0x1fd): undefined reference to `minusnumeros'
C:\Users\hugol\AppData\Local\Temp\ccoRymWv.o:password.c:(.text+0x263): undefined reference to `mayusminusnumeros'
collect2.exe: error: ld returned 1 exit status
Minibiru
  • 25
  • 5

0 Answers0