| Ver tema anterior :: Ver siguiente tema | | Autor | Mensaje |
|---|
darkman87
Registrado: 30 Oct 2008 Mensajes: 4 Ubicación: Costa Rica
| Publicado: 30/10/2008 12:05 pm | | | Título: Como matar procesos en LINUX utilizando C |
| El codigo para eliminar un proceso consiste en hacer la siguiente llamada desde la consola (Kill xxx*) (*xxx numero de proceso), en C seria utilizar el system("Kill xxx"), pero como le paso la variable xxx (entero) al system? es que el +, "," u otras alternativas "logicas" no funcionan. _________________ La civilización no suprime la barbarie, la perfecciona. |
| | Volver arriba | |  | rir3760

Registrado: 01 Oct 2004 Mensajes: 7516 Ubicación: Mexico
| Publicado: 31/10/2008 8:15 am | | | Título: |
| Esa "solucion" no funciona porque el lenguaje C no permite la concatenacion de cadenas mediante el operador '+'.
Tienes dos opciones, una es construir la cadena en base a strcpy, strcat y similares. La otra es construirla en base a la funcion sprintf, mas o menos asi:
| Código: | char comando[algun_valor_aceptable]; int pid;
pid = 123; /* SOLO un ejemplo*/
/* ... */
sprintf(comando, "kill %d\n", pid); /* ** comando ahora contiene la cadena: ** "kill 123\n" */
/* ... etc ... */ |
Un saludo _________________ C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly. -- Kernighan & Ritchie, The C programming language |
| | Volver arriba | |  | darkman87
Registrado: 30 Oct 2008 Mensajes: 4 Ubicación: Costa Rica
| Publicado: 31/10/2008 4:15 pm | | | Título: Gracias... |
| OK, muchas gracias por la ayuda... _________________ La civilización no suprime la barbarie, la perfecciona. |
| | Volver arriba | |  | | |
| No puede crear mensajes No puede responder temas No puede editar sus mensajes No puede borrar sus mensajes No puede votar en encuestas
|
|
| |