Autor
|
Tema: funcion gotoxy ( x , x ) (Leído 93,564 veces)
|
GuilleSPA
Desconectado
Mensajes: 352
|
weno pos no m funciona la funcion gotoxy ( x , x ); con q biblioteca se abre? xq m da error ¿? el codigo es este
#include<stdio.h> #include<conio.h>
int main(){ printf("uno\n"); printf("dos\n"); printf("tres\n"); getch(); gotoxy( 20, 10 );
return 0; }
|
|
|
En línea
|
|
|
|
|
Juan_Perez
Desconectado
Mensajes: 148
|
La función gotoxy (int columna, int fila) es una función declarada en el encabezado <conio.h>, la cual viene en los compiladores de la línea de Turbo C (y también Borland C++) de la compañía Borland. Si usas otro compilador debes de buscar una función equivalente. En el compilador Dev C++ hay una emulación de las funciones declaradas en <conio.h>, pero antes tienes que bajarte esta librería y compilarla para poder usarla. Windows ofrece un conjunto de funciones para manejar la consola, entre las cuales está una equivalente a gotoxy, pero para poder usar estas funciones tienes que verificar si tu compilador puede usarlas. Esto lo puedes ver buscando el archivo de encabezado windows.h en el directorio include de tu compilador. La función es SetConsoleCursorPosition (HANDLE hConsoleOutput, COORD coord), pero su uso no es inmediato como la función gotoxy. Te muestro un ejemplo sencillo que mueve el cursor a la posición (10, 10) (aquí tienes que tomar en cuenta de que con gotoxy el origen es (1,1), mientras que con la otra función comienza en (0, 0)) #include <windows.h> main () { HANDLE hConsoleOutput; COORD coord; hConsoleOutput = GetStdHandle (STD_OUTPUT_HANDLE); coord.X = 10; coord.Y = 10; SetConsoleCursorPosition (hConsoleOutput, coord); }
. Si programas bajo GNU/Linux puedes usar la función move(int fila, int columna), que viene en la librería NCURSES la cual funciona en casi todas las distribuciones.
|
|
|
En línea
|
|
|
|
Juan_Perez
Desconectado
Mensajes: 148
|
ANELKAOS, me parece que estás confundiendo la instrucción goto del lenguaje C/C++, la cual interrumpe el flujo secuencial del programa saltándose a un lado que tu le especificas, con la función gotoxy (x, y), la cual mueve el cursor a una línea y columna específica, cuando programas en modo consola.
|
|
|
En línea
|
|
|
|
redHat
Desconectado
Mensajes: 427
Don't fear the Penguin
|
No la utilices, es un crimen, es la llamada programación spaguetti xD
|
|
|
En línea
|
Calaberas traseras transparentes $80.00, defensa de Honda Civic 2000, $1000.00, cambiarte 4 carriles con menos de 5 metros de espacio, no tiene precio.....
|
|
|
GuilleSPA
Desconectado
Mensajes: 352
|
|
|
|
En línea
|
|
|
|
anietru
Desconectado
Mensajes: 1
|
después de investigar un poco en los archivos de dev c++ encontré un archivo de ejemplo donde esta un programa similar al siguiente que me mostró como poner color y posicionar el texto. Me puse muy feliz al poderlo hacer ya que he batallado un poco al respecto y a si quedo mi primer intento Espero les sirva. #include <constream> using namespace conio; using namespace std; int main() { cout << setattr(BLUE) << setxy(15,15) << "Y DAR COORDENADAS A EN LA PANTALLA"; cout << setattr(YELLOW) << setxy(10, 10) << "POR FIN!!!"; cout << setattr(GREEN) <<setxy(13,13) << "PUDE CAMBIAR EL COLOR"; cout << setattr(BROWN) <<setxy(20,20) << " "; getch(); return 0; }
|
|
|
En línea
|
|
|
|
Maurice_Lupin
Desconectado
Mensajes: 356
GPS
|
Buena función sch3m4, yo me instalaba el conio2 para dev C++
|
|
|
En línea
|
Un error se comete al equivocarse.
|
|
|
raver1983
Desconectado
Mensajes: 3
|
//La definicion de gotoxy me da errores, el codigo que pusieron: //Código: int gotoxy(SHORT x, SHORT y) { COORD coord; HANDLE h_stdout; coord.X = x; coord.Y = y; if ((h_stdout = GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE) return 0; if (SetConsoleCursorPosition(h_stdout, coord) == 0) return 0;
return 1; }
/*Mi prefunta es: que cabeceras ocupa este codigo para que funcione?, porque al definir la funcion y tratar de usarla me marca multiples errores de compilacion, yo solo inclullo la stdio.h , pero al parecer no es suficiente con esta cabecera para poder definir correctamente esta funcion*/
|
|
|
En línea
|
|
|
|
|
|