Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - MAFUS

#121
¿Qué tal si pones el código real de la carga de las dos estructuras (externa e interna)?
#122
Son punteros a funciones. Es una forma de hacer que una función pueda hacer muchas cosas diferentes, dependiendo del método o función que se les pase.
Es una forma de hacer las cosas genéricas.
Sólo importante que la función o método que se le pase cómo parámetro coincida con la que se espera.

Un ejemplo en C:
#include <stdio.h>

int suma(int a, int b) {
   return a + b;
}

int resta(int a, int b) {
   return a - b;
}

int calcular(int (*funcion)(int, int), int a, int b) {
   return funcion(a, b);
}

int main () {
   int a = 3;
   int b = 2;

   printf("%d + %d = %d\n", a, b, calcular(suma, a, b));
   printf("%d - %d = %d\n", a, b, calcular(resta, a, b));
}


Esto devuelve:
Citar3 + 2 = 5
3 - 2 = 1
#124
Te has equivocado de foro, esto no es cracking, es programación en C/C++.
#125
Programación C/C++ / Re: Programación C
4 Abril 2019, 16:35 PM
No funcionará. El operador de incremento es ++, no + +. No puede tener espacios en medio.
#126
Con C es usando strtok
#127
struct {
   char *nick,*nombre,*pswd;
   int nivel,vida,escudo;
}jug;


jug es una variable de una estructura anónima, no un tipo de dato, por tanto no puedes hacer struct jug registrojug[34];

Debes cambiar la declaración del tipo de estructura a struct jug{
   char *nick,*nombre,*pswd;
   int nivel,vida,escudo;
};

#128
El cambiar cosas de la terminal es dependiente del sistema operativo. Con Windows se hace con llamadas a la API, con Linux debes usar códigos de escape ANSI.
Eso para que no tengas que liarte con librerías multiplataforma.
#129
Los dos primeros errores:
contadorindice es un puntero sin inicializar por tanto no lo puedes usar como índice. Tampoco lo podrías usar si fuera un entero sin inicializar.

Primero tienes que adquirir memoria dinámica para pacientes antes de hacer la comprobación del if. De nuevo estás usando un dato sin inicializar.
#130
Primero consigue la cadena con fgets y usas strtok para conseguir el nombre de usuario.
Si no es igual al nombre introducido por teclado vuelves a conseguir otra línea con fgets.
Si es igual al nombre introducido por teclado vuelves a usar strtok para conseguir la contraseña.
A partir de ahí haz lo que necesites: que pida tres veces la contraseña si se equivoca, rechace al usuario, bloquee la cuenta, lo deje entrar si ha acertado... ya depende de tí.