Autor
|
Tema: Ayuda con este problema "[Warning] built-in function 'y0' declared as non-functi (Leído 7,247 veces)
|
MrCookie40
Desconectado
Mensajes: 6
|
Ayuda, tengo este codigo y lo quiero copilar en Lenguaje C, el problema es que en la linea 9 ("int x,y,x0,y0;" me da el siguiente error " [Warning] built-in function 'y0' declared as non-function" y no se el porque, estoy programando en Dev C++ porque es donde me pidieron el programa xd #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <windows.h>
char c; char tecla; int x,y,x0,y0; int laberint[21][66]; char grafica[20]; char true;
void gotoxy(int x,int y){ HANDLE hcon; hcon = GetStdHandle(STD_OUTPUT_HANDLE); COORD dwPos; dwPos.X = x; dwPos.Y= y; SetConsoleCursorPosition(hcon,dwPos); } int main(){ gotoxy(28,0); printf("Bienvenido al laberinto xd"); gotoxy(28,1); printf("Para jugar, usa las letras A, S, D, W"); gotoxy(28,2); printf(" A = Izquierda\n S = Abajo\n D = Derecha \n W = Arriba "); gotoxy(28,6); printf("Disfrutalo"); gotoxy(28,7); printf("Presiona cualquier tecla para empezar..."); tecla=getch();
x0=34; y0=8;
for (x=35;x<=65;x++) for (y=5;y<=20;y++) { laberint[y][x]=rand()%2; } laberint[x0][y0]=0; x=x0; y=y0;
while(true) { system("CLS"); grafica[0]=0; for(y0=0;y0<20;y0++) { for(x0=0;x0<65;x0++) { if(x0==x&&y0==y) sprintf(grafica,"%s%c",grafica, 42); else if(laberint[y0][x0]>0) sprintf(grafica,"%s%c",grafica, 219); else sprintf(grafica,"%s%c",grafica, ' ');
} if(y0<21) sprintf(grafica,"%s%s",grafica,"\n"); } puts(grafica);
c=getch(); switch(c) { case 'a': if(x>0) if(laberint [y][x-1]==0) x--; break; case 'd': if(x<79) if(laberint [y][x+1]==0) x++; break; case 'w': if(y>0) if(laberint [y-1][x]==0) y--; break; case 's': if(y<25) if(laberint [y+1][x]==0) y++; break; case 27: exit(0); default: system("CLS"); } } return 0; }
|
|
|
En línea
|
|
|
|
engel lex
|
Dev c por alguna razón incluye librerías no solicitadas... o tal vez está incluida en conio.h, o tal vez windows.h... y0, y1 y y2 son funciones matemáticas incluidas en math.h... el error es que estás usando una funcion como nombre de variable
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
MrCookie40
Desconectado
Mensajes: 6
|
Dev c por alguna razón incluye librerías no solicitadas... o tal vez está incluida en conio.h, o tal vez windows.h... y0, y1 y y2 son funciones matemáticas incluidas en math.h... el error es que estás usando una funcion como nombre de variable
¿Entonces que es lo que debo hacer xd? la verdad soy muy novato en esto hahaha
|
|
|
En línea
|
|
|
|
engel lex
|
usa un noombre de variable diferente a y0... usa y_0
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
MrCookie40
Desconectado
Mensajes: 6
|
usa un noombre de variable diferente a y0... usa y_0
Ya lo he intentado, pero al hacer de esto solo muestra los "printf" y al teclear algo este se finaliza...
|
|
|
En línea
|
|
|
|
engel lex
|
wow acabo de notar que tu eres el del laberinto XD montaste eso rapido!
cambia y0 por y_0 y muestra como quedó tu código
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
MrCookie40
Desconectado
Mensajes: 6
|
wow acabo de notar que tu eres el del laberinto XD montaste eso rapido!
cambia y0 por y_0 y muestra como quedó tu código
Hahaha, si, soy yo xdxd, asi quedo el codigo... #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <windows.h>
char c; char tecla; int x,y; int x0,y_0; int laberint[21][66]; char grafica[20]; int true;
void gotoxy(int x,int y){ HANDLE hcon; hcon = GetStdHandle(STD_OUTPUT_HANDLE); COORD dwPos; dwPos.X = x; dwPos.Y= y; SetConsoleCursorPosition(hcon,dwPos); } int main(){ gotoxy(28,0); printf("Bienvenido al laberinto xd"); gotoxy(28,1); printf("Para jugar, usa las letras A, S, D, W"); gotoxy(28,2); printf(" A = Izquierda\n S = Abajo\n D = Derecha \n W = Arriba "); gotoxy(28,6); printf("Disfrutalo"); gotoxy(28,7); printf("Presiona cualquier tecla para empezar..."); tecla=getch();
x0=34; y_0=8;
for (x=35;x<=65;x++) for (y=5;y<=20;y++) { laberint[y][x]=rand()%2; } laberint[x0][y_0]=0; x=x0; y=y_0;
while(true) { system("CLS"); grafica[0]=0; for(y_0=0;y_0<20;y_0++) { for(x0=0;x0<65;x0++) { if(x0==x&&y_0==y) sprintf(grafica,"%s%c",grafica, 42); else if(laberint[y_0][x0]>0) sprintf(grafica,"%s%c",grafica, 219); else sprintf(grafica,"%s%c",grafica, ' ');
} if(y_0<21) sprintf(grafica,"%s%s",grafica,"\n"); } puts(grafica);
c=getch(); switch(c) { case 'a': if(x>0) if(laberint [y][x-1]==0) x--; break; case 'd': if(x<79) if(laberint [y][x+1]==0) x++; break; case 'w': if(y>0) if(laberint [y-1][x]==0) y--; break; case 's': if(y<25) if(laberint [y+1][x]==0) y++; break; case 27: exit(0); default: system("CLS"); } } system("pause"); }
|
|
|
En línea
|
|
|
|
engel lex
|
tu getch de movimiento está fuera del ciclo, por lo que al presionarlo, el programa llega a su fin
hasta donde llega? (te recomiendo aprender a usar el debugger (depurador) de tu ide (devc++) para que puedas navegar con más facilidad estos problemas
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
MrCookie40
Desconectado
Mensajes: 6
|
tu getch de movimiento está fuera del ciclo, por lo que al presionarlo, el programa llega a su fin
hasta donde llega? (te recomiendo aprender a usar el debugger (depurador) de tu ide (devc++) para que puedas navegar con más facilidad estos problemas
Pues al correr el programa solo llega hasta la linea "Presiona cualquier tecla para empezar..." y al teclear algo pues finaliza...
|
|
|
En línea
|
|
|
|
engel lex
|
no puedo probar tu codigo porque ando en linux, pero revisé bien, tu getch si está en el while...
pero creo que deberías usar directamente printf para mostrar en lugar de cargarlo en una variable y puego usar puts...
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
[AYUDA] Warning: sprintf() [function.sprintf]: Too few arguments
PHP
|
Rudy21
|
3
|
5,646
|
30 Julio 2008, 15:51 pm
por Ertai
|
|
|
[BATCH] Ayuda con este script sobre "if exist" y "takeown" (SOLUCIONADO)
Scripting
|
SuperDraco
|
4
|
12,431
|
30 Noviembre 2009, 21:05 pm
por Angel Doze
|
|
|
problema "procedimiento sub o function no definido"
Programación Visual Basic
|
.:UND3R:.
|
4
|
7,176
|
15 Junio 2011, 20:41 pm
por .:UND3R:.
|
|
|
¿Qué es este warning?
.NET (C#, VB.NET, ASP)
|
SARGE553413
|
4
|
3,215
|
1 Septiembre 2014, 07:19 am
por 6666
|
|
|
Me podeis explicar este pequeño codigo?. " Llamar a function shellexecute "
Programación C/C++
|
70N1
|
3
|
3,189
|
20 Diciembre 2014, 20:23 pm
por Eternal Idol
|
|