Anuncios Google

error C++

Hola, quisiera saver si alguien me puede solucionar este error: ( el error es del lenguage C++ para NDS, mas abajo pongo porque lo puse en www.scenebeta y no en nds.scenebeta)


main.c
d:/devkitPro/homebrew/aassddff/source/main.c: In function 'main':
d:/devkitPro/homebrew/aassddff/source/main.c:59: error: expected expression before ')' token
make[1]: *** [main.o] Error 1
make: *** [build] Error 2


Y este es el pedazo de codigo donde supuestamente está el error:


 for(i = 0; i > -32; --){
        PA_SetBrightness(0, i);
        PA_SetBrightness(1, i);
        PA_WaitForVBL();          
    }


Os dejo aqui el codigo completo:


    #include <PA9.h>       // Include for PA_Lib
 
    #include "compo_top.h" // gif to include
    #include "compo_bottom.h" // gif to include
    #include "test.h"
    s16 level = 0;
    s16 fade;
    s8 black = 0;
    void HBL_function(void){
   s16 vcount = PA_GetVcount();
   vcount++;
   if(vcount > 192) vcount = 0; // Get correct vcount
   fade = (vcount+(level*4)-192)>>2;  
   if(fade < 0) fade = 0;
   if(fade > 31) fade = 31;
 
   if(black) PA_SetBrightness(0, fade-31);
   else PA_SetBrightness(0, 31-fade);
}  
 
 
 
    // Function: main()
    int main(int argc, char ** argv)
{
    PA_Init();    // Initializes PA_Lib
    PA_InitVBL(); // Initializes a standard VBL
 
        PA_Init8bitBg(0, 3);     // Init a 16 bit Bg on screen 0
    PA_Init8bitBg(1, 3);     // Init a 8 bit Bg on screen 1   
 
    PA_SetBrightness(0, -31); // all black
    PA_SetBrightness(1, -31); // all black   
 
    // Load splash while hidden
    PA_LoadGif(    1, (void*)compo_top); // Gif File
    PA_LoadGif(    0, (void*)compo_bottom); // Gif File
 
    s8 i;
    // Transition to normal visible background
    for(i = -31; i <= 0; i++){
        PA_SetBrightness(0, i);
        PA_SetBrightness(1, i);
        PA_WaitForVBL();          
    }  
 
    s16 time = 180; // 180 frames = 3 seconds
    while(time && (!Pad.Newpress.Anykey) && (!Stylus.Newpress)){ // Display until time over or keys pressed
        time--; // time goes by
        PA_WaitForVBL();
    }       
 
    // Transition to black
 for(i = 0; i > -32; --){
        PA_SetBrightness(0, i);
        PA_SetBrightness(1, i);
        PA_WaitForVBL();         
    }
 
    // Now that it's all black, clean all that and you're ready to go !
    PA_ResetBgSys();
    PA_SetBrightness(0, 0); // normal
    PA_SetBrightness(1, 0); // normal
    // Aqui pondremos temporalmente una imagen
    PA_InitText(1, 0);
    PA_SetBrightness(0, 31);
    PA_Init8bitBg(0, 3);
    PA_LoadGif(0, (void*)test);
    irqSet(IRQ_HBLANK, HBL_function);
    irqEnable(IRQ_HBLANK);
    u8 i;
    level = 0;
    while(1){
    PA_WaitForVBL();        
    }       
 
    return 0;
}


 

He dejado en negrita, el lugar donde está el supuesto error


 

Lo he puesto aqui por que en NDS.scenebeta.com me han respondido pero lo que me respondieron no me ayudo ya que mucha gente intento ayudarme pero el error seguia aqui. Asi que he puesto el mismo post aqui para ver si alguien que sepa C++ puede ayudarme.

Gracias, adios.


I like:


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de sarutoby

Ya está

ya lo he modificado y el c0odigo está en un cuadro. Gracias por decirme como se hacia esto.Lengua fuera

Gracias, adios.

Imagen de sarutoby

Desgraciadamente si

canvio esa i por una "j"me sale otro error distinto
Mirad este es el enlace:

http://www.megaupload.com/?d=VRWA9Q8I

Descargaros este archibo e intentad compilarlo vosotros. Si lo conseguis, por favor, avisadme como sea. Desde aqui os podreis descargar la aplicacion sincompilar. Aqui disponeis del codigo fuente para que lo analizeys tranquilamente. Como pone antes, si alguien consigue compilarlo, que me avise por favor.

Gracias, adios.


I like:

Imagen de Guillermo_Cornielle

A ver

Pienso que el bucle for que tu tienes:

 for(i = 0; i > -32; --){
        PA_SetBrightness(0, i);
        PA_SetBrightness(1, i);
        PA_WaitForVBL();          
    }

Deberia ir de esta menra

 for(i = 0; i > -32; i--){
        PA_SetBrightness(0, i);
        PA_SetBrightness(1, i);
        PA_WaitForVBL();          
    }

No conozco las funciones de la PSlib así que no te pueod decir mas, solo que el error debe estar en la parte en donde pones ''--'' sin la ''i'', es decir, lo correcto seria ''i--''.

No revise la parte completa del codigo, solo la que te daba error.

Un saludo.


Manual del Perfecto Votante Para un voto libre y justo!.

TheGCProjects

Imagen de sarutoby

Eso es

esactamente lo que me digeron los usuarios de NDS. scenebeta pero les decia y sigo diciendo que si pongoesa i me sale este error:


main.c
d:/devkitPro/homebrew/aassddff/source/main.c: In function 'main':
d:/devkitPro/homebrew/aassddff/source/main.c:75: error: conflicting types for 'i'
d:/devkitPro/homebrew/aassddff/source/main.c:44: error: previous declaration of 'i' was here
d:/devkitPro/homebrew/aassddff/source/main.c:75: warning: unused variable 'i'
make[1]: *** [main.o] Error 1
make: *** [build] Error 2

Eso de la "i" funcionaria si solo pusiera una transicion pero como estoy poniendo mas de 1 eso no me funciona.

Gracias, adios


I like:

Imagen de NITEMAN

Tipos

Veo que en la mayoría de las ocasiones no declaras el tipo0 de cada variable y esto puede ser un problema...

En C no soy un experto, pero para que funcionase en jva la linea debería ser for (int i; i > -32; i--) {  incluyendo int también en el otro bucle, lo que limita el ambito de la variable.

Salu2


"El paraí­so a mi derecha, el infierno a mi izquierda y el ángel de la muerte tras de mi."

Imagen de sarutoby

Una cosa

ho canviado una parte del codigo que se suponia que estava mal y aora me sale un error distinto. Aqui os dejo el codigo:


for (i = 0; i > = -31; i--)
    {
        PA_SetBrightness(0, i);
        PA_SetBrightness(1, i);
        PA_WaitForVBL();        
    }

Y aqui os dejo el error:

main.c
d:/devkitPro/homebrew/aassddff/source/main.c: In function 'main':
d:/devkitPro/homebrew/aassddff/source/main.c:52: error: expected expression before '=' token
make[1]: *** [main.o] Error 1
make: *** [build] Error 2

Se ve que teniais razon con lo de que tenia que poner esa "i"


I like:

Imagen de NITEMAN

El espacio

Creo que el problema es que pones un espacio entre > y =.

Por cierto, me confundí al ponerte la linea antes sería: for (int i = 0; i > -32; i--) {

Salu2


"El paraí­so a mi derecha, el infierno a mi izquierda y el ángel de la muerte tras de mi."

Imagen de sarutoby

ya si eso ya se me

cocurrio pero me di cuenta de que si quito ese espacio pos entonces me sale un error diciendo que tengo que quitar la segfunda 1:


for (i = 0; i> =(-31); i--)

me sale que tengo que quitar esa y asi buelbo al error principal. Ese es el error que me sale si quito el espacio:

main.c
d:/devkitPro/homebrew/aassddff/source/main.c: In function 'main':
d:/devkitPro/homebrew/aassddff/source/main.c:70: error: redeclaration of 'i' with no linkage
d:/devkitPro/homebrew/aassddff/source/main.c:37: error: previous declaration of 'i' was here
d:/devkitPro/homebrew/aassddff/source/main.c:70: warning: unused variable 'i'
make[1]: *** [main.o] Error 1
make: *** [build] Error 2

ves. Saves, empiezo a pensar que soy yo que soy gafe...


I like:

Imagen de NITEMAN

Lo facil

Iendo a la facil cambia "i" por "j" en el segundo bucle. A ver si tienes algún errror adicional que nos esté despistando.

Salu2


"El paraí­so a mi derecha, el infierno a mi izquierda y el ángel de la muerte tras de mi."

Imagen de Almamu

El problema del codigo, es

El problema del codigo, es como ya se le ha dicho en NDS, que declara 2 veces la i, con que la declare una vez al principio de main le seria suficiente para que se le kitasen muchos errores...


Imagen de sarutoby

Ya pero si

quito la "i" pos me sale este error:


main.c
d:/devkitPro/homebrew/aassddff/source/main.c: In function 'main':
d:/devkitPro/homebrew/aassddff/source/main.c:52: error: expected expression before ')' token
make[1]: *** [main.o] Error 1
make: *** [build] Error 2

Por favor podrias probar a compilarlo tu haver si a ti te sale, por que esto empieza a parecer que yo soy gafe...


I like:

Imagen de Almamu

Haber si aprendemos a leer

Haber si aprendemos a leer los errores, dice:

main.c linea 52, Error: Expresion inesperada antes del signo ')'

El error está en que una de las soluciones que se te ha dado antes no la has aplicado.

Es por culpa del for:

 for(i = 0; i>-32; i--){

Poniendo eso se arregla. Y porfavor, la proxima vez que preguntes algo y pongas codigo usa el boton de código.


Imagen de sarutoby

Lo del

boton de codigo, lo siento, es que no savia que havia uno...    ...me acabo de enterar aora...

(diciendo esto perezco un poco cortito o lento...)


I like:

Imagen de Guillermo_Cornielle

No te preocupes

De los errores se aprende.

Saludos.

Imagen de Guillermo_Cornielle

Trata

De hacer la transicion para poner colo negro con otra variable, pues no se cual es el error, tal vez no la has declarado para ese bucle for.

Deja revisar a ver que veo, pero lo seguro es que el bucle for debe de estar como yo te lo puse en el ejemplo.

EDITO: No veo el error la verdad es que estoy fuera de practica en esto de C/C++, aunque no soy ni fui un experto. Trata de hacer esas transiciones en el mismo  bucle for, no se cambiar el valor de las variables dependiendo del color en que este el fondo.


Manual del Perfecto Votante Para un voto libre y justo!.

TheGCProjects

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.