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 - Oblivi0n

#661
Si, lo mejor es lo que dice do-while, esos libros de "aprende en 21 dias", son casi mejores para gente que ya sabe algun otro lenguaje de programacion, bajate mejor uno de los que te dice el, y cuando ya tengas algo de practica el Programming in C K&R
#662
Buenas noches!

Me interesa bastante este tema de programacion de videojuegos
Programo en C/C++, y tengo "creados" juegos, pero desconozco como hacer los graficos, me explico:
Por ejemplo, hace poco hice una batalla entre dos jugadores (tipo pokemon de gameboy), escojias ataques, hacias daño dependiendo de tus estadisticas, etc etc, lo que no se es como crear los graficos y todo eso, alguien podria darme un poco de luz en este tema?  ;D  :rolleyes:

Un saludo
#663
Programación C/C++ / Re: ayuda programadores
12 Octubre 2010, 03:01 AM
He estado probando y me tira el mismo error, quizas litlehorse o eternalidol tengan la solucion.
Te propongo que tires del MFC, (he visto un post tuyo tb en el subforo de VB) y que hagas esto para borrar el directorio
Código (cpp) [Seleccionar]

System::IO::Directory::Delete("c://abc");

Donde abc es una carpeta que cree para comprobar si la funcion borrab la carpeta (lo hizo)

Luego para ejecutar los archivos puedes seguir esta rutina:
Código (cpp) [Seleccionar]

system("ruta del archivo");


Se que es rudimentaria, y desde luego, si es para hacer un virus (que no se porque, me la impresion que con fines beneficos no es... xD (perdona si me equivoco)  ) tendras que ingeniartelas un poco mas, pero precisamente de eso se trata la programacion, de ingeniarselas.

Espero que te haya sido util, un saludo.
#664
Habrá que empezar a mirar un poco...
Puede ayudar tambien leer el Windows Internals? He leido por ai que era lectura recomendada para los que programen drivers  o con la API de windwows  :-\
#665
Seria bueno que metieses el codigo en las etiquetas correspondientes...
#include <stdlib.h>
#include <stdio.h>
#include <unistd.h>


int m,n,p; /*Variables que contendran las dimensiones de las matrice*/
int **matdfA,**matdfB;
int **matA,**matB,*matresultado;



/*-----------------------Funciones----------------------*/

/*La funcion cerrarpipe permitira como bien dice su nombre
cerrar las entradas no utilizadas*/
void cerrarpipe(int a){  /*el parametro i es la pipe utilizada*/
    int j;
    for(j=0;j<m;j++){
        if(j!=a){
            close(matdfA[j][0]);  /*cerramos tanto la parte de lectura como de escritura de las pipes no utilizadas*/
            close(matdfA[j][1]);
            //close(matdfA[j]);
            close(matdfB[j][0]);
            close(matdfB[j][1]);
            //close(matdfB[j]);
        }

    }
}
void padre_parte_envia_matriz(){

    /* Creacion del buffer*/
    int j,k, *bufr;
    for(j=0;j>m;j++){
        for(k=0;k<n;k++){
            //bufr[k]=matA[j][k];
            bufr[k]=matA[j][k];
        }
        write(matdfA[j][1],bufr,sizeof(bufr));
    }

}
/*Leeremos los datos y asignaremos estos al buffer*/
void hijo_recibe(int i){
    int *bufr,*resultado;
    read(matdfA
,bufr,sizeof(bufr));
    /*Procesamiento del buffer*/
    write(matdfB[1],resultado,sizeof(resultado));
}
/*Creacion de las matrices iniciales aleatoriamente e impresion*/
void crear_matrices(int m, int n, int p){
    int i,j;
    //matA=(int *)malloc(sizeof(int*)*m);
    //for(i=0;i<m;i++){
    //    matA=(int *)malloc(sizeof(int*)*n);
    //}
    for(i=0;i<m;i++){
        for(j=0;j<n;j++){
            matA[j]=rand()%9;
            }
    }
    for(i=0;i<n;i++){
        for(j=0;j<p;j++){
            matB[j]=rand()%9;
            }
    }
    printf("********Matriz A********");
    for(i=0;i<m;i++){
        for(j=0;j<n;j++){
            printf("%d",matA[j]);
        }
        printf("\n");
    }
    printf("********Matriz B********");
    for(i=0;i<n;i++){
        for(j=0;j<p;j++){
            printf("%d",matB[j]);
        }
        printf("\n");
    }

}
void padre_obtiene_datos(){
    fd_set fd;
    int mayor;
    int cont,j,i;
    mayor=matdfB[0][0];
    for(i=1;i<m;i++){
        if(mayor<matdfB
){
            mayor=matdfB
;
        }
    }
    do{
            FD_ZERO(&fd);
            for(j=0;j<m;j++){
            FD_SET(matdfB[j][0],&fd);
            }
            if(select(mayor+1,&fd,NULL,NULL,NULL)){
                perror("Select");
            }
            else{
                for(j=0;j<m;j++){
                        if(FD_ISSET(matdfB[j][0],&fd)){
                            /* ..........*/
                        }
                        else{
                        read(matdfB[j][0],matresultado,sizeof(matresultado));
                        cont++;
                        }
                }
            }
    }while(cont<m);
}

int main(){

    int i;
    int j;
    /*Peticion de las dimensiones para la creacion de matrices */
    printf("De el numero de columnas en de la Matriz A: ");
    scanf("%d",&n);
    printf("\n De el numero de filas en de la Matriz A: ");
    scanf("%d",&m);
    printf("\n De el numero de filas en de la Matriz B: ");
    scanf("%d",&p);
        matdfA=(int **)malloc(sizeof(int *)*m);
   
    for(i=0;i<m;i++){
        matdfA=(int *)malloc(sizeof(int)*2);
        matdfB=(int *)malloc(sizeof(int)*2);
        for(j=0;j<m;j++){
            if(pipe(matdfA[j]<0) || pipe(matdfB[j]<0)){
                perror("Error creando pipes");
                exit(0);
            }
        }
    }
/* Creacion de los hijos con las caracteriasticas necesarias*/
    for(i=0;i<m;i++){
        if(fork()==0){
            cerrarpipe(i);
            hijo_recibe(i);
            exit(0);
        }
    }
    crear_matrices(m,n,p);
    padre_parte_envia_matriz();
    padre_obtiene_datos();


}
#666
ASM / Re: Dudas en ASM
6 Octubre 2010, 21:36 PM
Como bien dije, no tengo un gran conocimiento de ensamblador, y si, realize una busqueda en Google primero, tras no encontrar nada (fallo mio tambien?), decidi preguntar aqui, porque hasta ahora mis dudas fueron resueltsa amblamente, ya veo que no todos lo usuarios son iguales, tranquilo, ya me las apañare solo, siento haberte molestado tanto con mis preguntas de novato.

Un saludo.

P.D : creo que podias haberte limitado a responder a la pregunta, al menos yo lo aria así, resuelves la duda y punto, si segun tu, me esfuerzo mas o menos, es problema mio, no tuyo,no crees?
#667
ASM / Re: Dudas en ASM
6 Octubre 2010, 21:22 PM
Si conozco asm, y lo uso, pero dentro C, y estaba mirando ejemplos de ensamblador fuera de C, osea integros escritos en asm, quizas no tengo un gran conocimiento, pero desde luego, no pregunto que significa hola si no se hablar...
#668
ASM / Dudas en ASM
6 Octubre 2010, 19:55 PM
Buenas gente, estoy mirando ensamblador, y viendo ahora el "Hello world" en Wikipedia, he visto cosas que nunca habia visto antes.

Aqui les dejo el codigo y espero que alguien me pueda explicar esos comandos que no entiendo. (estan marcados en el codigo como un comentario)
Código (ASM) [Seleccionar]

.model small     ;<------NO ENTIENDO ESTO
.stack              ;<------NI ESTO
.data               ;<.-------NI ESTO
Cadena1 DB 'Hola Mundo.$'
.code              ;<-----NI ESTO

programa:
    mov ax, @data
    mov ds, ax
    mov dx, offset Cadena1
    mov ah, 9
    int 21h
    mov  ah,4ch
    int 21h
end programa


De antemano muchas gracias!!!
Un saludo.
#669
Madre mia, aparte de los errores de sintaxis, hay errores peores de caligrafia...
te recomiendo que hagas las cosas en varias funciones, y no una main enorme, dificulta mucho la lectura del codigo
La gran pregunta -- ¿Para que pones una funcion en un comentario?
#670
Ejercicios / Re: Retos C/C++
19 Agosto 2010, 10:43 AM
Buenas, yo me apunto a los retos, alguien puede decirme cuales estan resueltos y cuales no? (aunque los acabaré haciendo todos xD)