Originalmente colocado por ic_satanas
no mijo! yo soy bogotano.. y lo peor es q estoy viviendo en chile!! jajajaja
bueno ahi me baje uno q no me instalo.... :diablo: entonces voy por otro.
Bueno les queria hacer de una vez un par de preguntas:
1. como funciona la funcion do?
2. uno puede poner en #define una funcion? hay otro comando o no?
3. hay librerias q permitan incluir graficas? se pueden meter en una variable? (como para imprimir cout<<c; y q salga una imagen?)
4. como se le asigna una tecla a una accion espesifica? (por ejemplo esc para salir)
5. hay algunas forma de introducir uno de esos campos para q la persona pueda meter un valor (osea q no salga igual a lo escrito por el programa)
6. se pueden meter colores y formas a los textos (cout)
1. "do" funciona de manera similar a "while" (que son operadores del lenguaje y no funciones). Permiten repetir una serie de instrucciones mientras se cumpla una condición.
while( condicion )
{
// LO QUE SEA QUE HAGA
}
do
{
// LO QUE SEA QUE HAGA
}
while( condicion);
Como te puedes dar cuenta, la unica diferencia consiste en que "do" siempre se ejecuta al menos una vez, mientras que en el "while" tiene que cumplirse la condicion antes de que se ejecute el codigo interno al menos una vez.
2. #define es una orden del preprocesador. Las ordenes del preprocesador son ejecutadas antes de que se compile de verdad el programa. Con #define lo que haces es nombrar macros o "alias". Por ejemplo si pones
#define MI_NUMERO 56
entonces el preprocesador pondra en tu código el numero 56 en todas las partes donde encuentre MI_NUMERO.
No solamente puedes usar #define para poner nombres a valores determinados, sino también para crear "macro funciones" que no son funciones realmente, sino que (de manera similar a lo anterior) el preprocesador reemplaza el código en donde sea que lo encuentre. Por ejemplo:
#define MI_FUNCION_MACRO(numero1,numero2) numero1 + numero2
Entonces si colocas MI_FUNCION_MACRO(2,3) el preprocesador lo reemplazara con 2 + 3.
Recuerda que el preprocesador actua antes de que se compile en realidad el código fuente.
3. C++ es el lenguaje usado para el 99% de los juegos de computadora, ¿qué te dice ese dato?
El problema con los gráficos es que no se realiza de manera igual en todas las plataformas (es decir, en todos los compiladores y sistemas operativos), cosa que no ocurre en otros lenguajes como Java (pero que tienen que sacrificar muchas virtudes que tiene C++ por eso).
En C y C++ puedes crear tus propias funciones de gráficos comunicandote directamente con el hardware o con los drivers de los dispositivos, pero un programador normalmente utiliza librerías para gráficos o APIs (Application Programming Interface).
Entre las librerias una de las mejores alternativas es Allegro, que no solo sirve para gráficos, sino para manejar joysticks, sonido, música, videos, etc. Y además Allegro es multiplataforma.
Entre las APIs las más reconocidas son DirectX y OpenGL. OpenGL es más fácil de aprender, pero DirectX tiene mayores capacidades (actualmente) en sistemas Windows.
Para ponerte una idea de como funciona una libreria de gráficos sencilla como Allegro:
tu cargas el gráfico desde un archivo bmp, pcx, o lo que sea.
BITMAP * mi_grafico = loadbitmap("miarchivo.bmp");
y después indicas en que coordenadas quieres dibujar en la pantalla.
drawsprite(mi_grafico,23,23);
Creo que no es así exactamente, pero te da una idea.
Cabe anotar que ni cout ni ninguna de esas clases ó funciones convencionales te serviran para gráficos.
4. Normalmente no le asignas a una tecla una acción, más bien esperas a que el usuario presione la tecla para efectuar la acción.
5. Primero tenemos que aclarar si estamos trabajando en modo texto (MS-DOS) o si hablamos de aplicaciones con interfaces gráficas.
6. Con cout no puedes hacerlo, pero si con las funciones de conio.h y stdio.h. De todas maneras yo te recomedaría no apegarte mucho al modo texto, esa es la razón por la cual la gente suele desconocer lo que es capaz de hacer C++.