Código autodestructivo en C

Usando la función remove() en C, podemos escribir un programa que puede destruirse a sí mismo después de compilarlo y ejecutarlo.

Explicación: Esto se puede hacer usando la función de eliminación en C. Tenga en cuenta que esto se hace en un entorno Linux. Por lo tanto, la función de eliminación se alimenta con el primer parámetro en el argumento de la línea de comandos, es decir , un archivo.out (archivo ejecutable) creado después de la compilación. Por lo tanto, el programa será destruido.

// CPP program of self destructing output file
#include<stdio.h>
#include<stdlib.h>
  
int main(int c, char *argv[])
{
    printf("By the time you run me "
           "I will be destroyed \n");
      
    // Array of pointers to command line arguments
    remove(argv[0]);    
  
    // Note: argv[0] will contain the executable\
    // file i.e. 'a.out'
      
    return 0;
}

Pasos:

  1. Abre la terminal.
  2. Escribe el siguiente comando en la terminal:
     gcc self.c 
  3. Esto creará el archivo a.out .
  4. Escribe el siguiente comando en la terminal:
     ./a.out 

Producción:

By the time you run me, I will be destroyed

Después de la salida que se muestra arriba, se eliminará el archivo a.out . Y por lo tanto nuestro trabajo está hecho.

Publicación traducida automáticamente

Artículo escrito por mazhar_mik y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *