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

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18 19
141  Programación / Programación C/C++ / Es seguro reemplazar el paso de parametros por valor, utilizando punteros a constantes ? en: 27 Julio 2021, 23:37 pm
Quiero decir, se podría reemplazar completamente paso por valor, para solo utilizar punteros? Por ejemplo, la siguiente función no necesita punteros pero pienso que actuaría mejor (dado un programa más grande)
(Aunque esta función sería mejor hacerla en linea pero sirve como ejemplo)

Código
  1. #include <stdio.h>
  2.  
  3. int sumaEnteros(const int *pNum,const int *pOtroNum);
  4.  
  5. int main()
  6. {
  7.    char buffer[5] = { 0 };
  8.    int num = 0, otroNum = 0, res = 0;
  9.  
  10.    printf("Ingrese un numero: ");
  11.    fgets(buffer, 4 , stdin);
  12.  
  13.    sscanf(buffer,"%d",&num);
  14.  
  15.    printf("Ingrese otro numero: ");
  16.    fgets(buffer, 4 , stdin);
  17.    sscanf(buffer, "%d" , &otroNum);
  18.  
  19.    res = sumaEnteros(&num,&otroNum);
  20.  
  21.    printf("\n\n %d + %d = %d\n",num,otroNum,res);
  22.  
  23.    return 0;
  24. }
  25.  
  26. int sumaEnteros(const int *pNum, const int *pOtroNum)
  27. {
  28.    return *pNum + *pOtroNum;
  29. }
  30.  
  31.  
142  Programación / Ingeniería Inversa / Re: Acceder al codigo de un videojuego? en: 25 Julio 2021, 06:00 am
@BloodSharp entiendo,lo tendré en cuenta. Gracias por tu aporte  :) En todo caso, supongo que a medida que el juego es más actual, tiene mejor seguridad en cuanto cracks y demás no?
143  Programación / Ingeniería Inversa / Re: Acceder al codigo de un videojuego? en: 24 Julio 2021, 19:05 pm
Gracias por tu respuesta @Serapis muy informativa. Estaba tan en la oscuridad con el tema que hasta lo había puesto en la categoría hacking  :xD

Ya veo que es toda una rama nueva para aprender, muy interesante. Es cierto que los desarrolladores de videojuegos son los que más utilizan el ensamblador y tecnologías de procesador para hacer sus videojuegos  ir bien con las computadoras de esa epoca...

Crees que estudiar el lenguaje ensamblador de Intel puede ser una buena manera de comenzar? para poder orientarse a juegos de pc. Luego comence con el curso de Ricardo Narvaja que recomendaron por acá...

Saludos
144  Programación / Ingeniería Inversa / Acceder al codigo de un videojuego? en: 23 Julio 2021, 03:34 am
Buenas comunidad, siendo un completo novato en hacking, puede que esta sea una pregunta un tanto general... Como es el método para acceder al código de un videojuego ? Por ejemplo, para hacer mods, traducciones o cracks. Qué conceptos habria que investigar?
Imagino que parte del proceso es acceder al codigo fuente, reconocer el lenguaje en que esta escrito y de ahí modificarlo...
145  Programación / Programación C/C++ / Re: Invocacion funcion con variables de tipo puntero en: 20 Julio 2021, 03:33 am
Hola @LadyWin

Te dejo mis ideas jaja...Por ahi ya lo sabes pero, creo que la única forma que eso te retorna 0 es que ese if de la línea 9 es distinto de cero. Al utilizar punteros acordate que modificas el valor de la variable misma... entonces, la segunda llamada no va a devolver 1 porque se modificaron las variables en sí mismas. Osea que te está posicionando en otro casillero del tablero que no es cero...
Por ahi te interese hacer paso de parametros por valor, y vos le pasas la posición del tablero que queres evaluar.

Luego... en mi humilde opinión, te conviene hacer más descriptivos los nombres de tus variables y funciones, código aburrido y simple = código funcional y facil de mantener. Por ejemplo, la función puede llamarse: evalua_movimiento_caballo(), de un vistazo ya sabes qué hace.

PD: en el caso de que esa función busque las posibles posiciones del caballo (las que son igual a cero en la matriz), tal vez podrías hacer un while o for que recorra cada fila de la matriz hasta que encuentre una posición cero, y si no encuentra ninguna salta a la fila que viene...
146  Programación / Programación C/C++ / Re: Leer un string con memoria dinámica ? en: 19 Julio 2021, 03:46 am
No la liberas a mano. De esa se encarga C. Por eso si intentas liberar con free te saltará el error. Y no, la memoria puedes hacer una cadena tan larga como quieras. En los sistemas modernos el propio sistema no te dejará porque impide que los programas escriban o lean en direcciones de memoria que no están autorizados. En sistemas sin protección podrías escribir una cadena tan larga que podría sobreescribir cualquier parte de la memoria, y eso eran los ataques de buffer overflow.

Comprendo, quedo clarisimo.  Gracias viejo!
147  Programación / Programación C/C++ / Re: Leer un string con memoria dinámica ? en: 18 Julio 2021, 21:35 pm
@WHK , @MAFUS

muchas gracias por sus respuestas  :)

Entiendo que entonces no es posible liberar esa memoria ocupada por el arreglo estático auxiliar...? Me llama la atención porque aunque se quiera hacer que el usuario introduzca una cadena de cuantos caracteres quiera, al final habria un limite del estático...
148  Foros Generales / Noticias / Re: Windows 11 vendrá con el modo oscuro activado por defecto en: 17 Julio 2021, 20:23 pm
Tiene sentido, ya saben que tenemos la vista cansada :P

Recuerdo un tema oscuro de Windows 7 que cambiaba absolutamente todo, incluso las páginas web, era un poco bug... donde habia blanco metía negro xD
149  Programación / Programación C/C++ / Leer un string con memoria dinámica ? en: 17 Julio 2021, 20:16 pm
Buenas genios, me surgió la siguiente duda, tal vez alguien que la tenga más clara puede ayudarme.

Es válida esta forma de asignar un string de manera dinámica ? Si o si necesito utilizar un arreglo estático auxiliar ?

Código
  1.  
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <string.h>
  5.  
  6. int main()
  7. {
  8.    char cadena_aux[100] = { 0 };
  9.    char *cadena = NULL;
  10.    int tam_cadena = 0;
  11.  
  12.    puts("Introducir una linea de texto.");
  13.    fgets(cadena_aux,100,stdin);
  14.  
  15.    tam_cadena = strlen(cadena_aux);
  16.  
  17.    cadena = (char * ) malloc ( ( tam_cadena + 1 ) * sizeof(char) );
  18.  
  19.    if(cadena == NULL)
  20.    {
  21.        printf("Error en asignacion de memoria.\n");
  22.        exit(EXIT_FAILURE);
  23.    }
  24.  
  25.    strcpy(cadena,cadena_aux);
  26.  
  27.    printf("cadena = %s\n",cadena);
  28.  
  29.    free(cadena);
  30.  
  31.    return 0;
  32. }
  33.  
  34.  
  35.  

Luego, tras hacer la copia del estatico al dinámico, al intentar liberar la memoria utilizada en el arreglo estático me tira error...
150  Foros Generales / Dudas Generales / Re: es posible ganarse la vida siendo autodidacta? en: 17 Julio 2021, 04:48 am
Hola, te dejaré mi humilde opinión como estudiante de Programación. La rama de ciberseguridad pienso (sin tener ninguna experiencia en esta rama, pero sí alguna en programación) es una vez sabes las bases de informática y programación. Te recomendaría primero aprender programación con algún curso (si tienes alguien que pueda responder a tus dudas en cuanto a código mejor) y mucha lectura del tema.
Si estudiaste ciencias económicas seguro tienes el background de matematica y paciencia para aprender programación...
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 [15] 16 17 18 19
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines