SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: carol_tlk en Jueves 23 de Enero de 2003, 12:45
-
he realizado un programa en c++ para clase,preo ahora el profesor nos pide que además lo pasemos a c y no tengo ni idea ¿alguien podria echarme unas manos con las diferencias que existen entre los códigos de ambos?
muchas gracias y saludos a todo el foro
-
Hola.
Bueno eso es muy facil.
1) Todo lo que ha definido como una clase lo tiene que volver una estructura
class ---> struct.
2) En C no puede declarar metodos ni atributos como : public, protected, private, friend. Todo es public y no es necesario colocar la palabra reservada public, aunque tambien puede seguir usando private y protected.
3) Al definir una estructura (struct) habitualmente no se definen metodos (en C funciones) dentro de la estructura, pero el compilador lo permite asi que no hay ningun problemas si los deja dentro.
4)ejemplo sencillo
class complejo
{
private:
float r, i;
public:
complejo();
complejo sumar(complejo);
complejo restar(complejo);
complejo multiplicar(complejo);
complejo dividir(complejo);
};
complejo::complejo()
{...}
complejo complejo::sumar(complejo a)
{...}
en C seria
typedef struct {
float r, i;
} complejo;
complejo nuevo_complejo()
{...}
complejo sumar(complejo a, complejo b)
{...}
complejo restar(complejo a, complejo b)
{...}
Algo asi es, tambien cambia
a++ por a=a+1
-
Muchas gracias por los consejos que me diste,de momento el programa va bien
-
Si tiene alguna pregunta mas, no dude en hacermelo saber, que si puedo le ayudo con mucho gusto.
-
Soy muy nueva en esto de la programación y me surgen dudas a todas horas.
Cuando ejecutas un programa en c++ te sale una pantalla en negro con el texto en blanco ¿hay alguna forma de introducir algún color o algún icono?
gracias
-
Ya sabe que si tiene dudas no hay problema en que pregunte, que si se como ayudarla lo hare con gusto.
Como me imagino que ya sabe que el compilador borland c++ 3.0 y c++ 5.0 trabajan para DOS, asi que esa pantalla negra y letras blancas son de DOS.
Pero tranquila que si hay formas de cambiar los colores e incluso agregar imagenes, sonidos y demas.
Por ahora le mostrare una función, la cual es capas de cambiar el color del texto, su nombre es muy facil de recordar y es textcolor(int) , el entero que recibe por parametro es el color del nuevo texto y esta función es ideal para trabajar en programas sin entorno grafico. El problema es que trabaja solo con cprintf. Esta función pertenece a la libreria conio.h; ejemplo:
#include "conio.h"
void main()
{
int color;
for (color=0; color<15; color++)
{
textcolor(color);
cprintf("david");
}
}
Tambien puede ver la ayuda de textbackground ---> Color de fondo en el texto.
textattr ---> combina textcolor con textbackground.
color ---> tabla de colores predeterminados.
Pruebe los siguientes codigos:
for (color=0; color<15; color++)
{
textbackground(15 - color);
textcolor(color);
cprintf("david");
}
}
Si desea color de fondo haga este pequeño truquito:
Borrar despues de colocar textbackground y antes de escribir en pantalla.
textbackground(7);
clrscr();
textcolor(1);
cprintf("david");
Lo del icono no se a lo que se refiere, pero:
Si es del programa toca que lo haga por propiedades (click sobre el icono del programa con el boton derecho, propiedades, programa, cambiar icono).
y si es sobre colocar botones o dibujos dentro del programa se lo ire mostrando a medida que vaya aprendiendo.
De todas maneras seria bueno que me aclarara lo del icono.
Para el manejo de colores y graficos se hace con la libreria graphics.h, seria bueno que la mirara.
¿Cual compilador usa?
Adios
-
Originalmente publicado por davidrj
Algo asi es, tambien cambia
a++ por a=a+1
Eso no cambia. a++ y a+=1 funcionan perfectamente en ansi C;)
-
Originalmente publicado por meloncoton
Originalmente publicado por davidrj
Algo asi es, tambien cambia
a++ por a=a+1
Eso no cambia. a++ y a+=1 funcionan perfectamente en ansi C;)
Las dos sentencias si son diferentes. Mire el siguiente ejemplo:
# include <stdio.h>
main()
{
int a=1;
printf("n%d :",a++);
printf("n%d :",a+=1);
}
gmantil