Es por el compilador Borland que estas usando, no sé si cumpla con los estandares, yo uso el GNU G++ por si quieres probarlo, Code::Blocks lo incluye creo..
Estoy aprendiendo en c o c++, porque la idea es primero en c y luego en c++ (en la escuela se supone que es c puro), tu código es de c o de c++? ¿Podrías poner uno en c y otro en c++ por favor? Para ver las diferencias.
Ningún compilador te obligará a poner código que no necesitas, en este caso getchar y cin-get...
La lentitud es muuuuy relativa, depende de la compilación, aunque no deberia ser notorio para nada.
Si te gusta C++ adelante, no necesitas aprender C para pasarte a C++, de hecho no es recomendable pues usan paradigmas distintos, lee sobre la programación orientada a objetos, pues sin ella C++ no sirve, ahi radica su verdadero poder...
La verdad es que tengo que aprender c en la escuela. Pero estudiaré por mi cuenta c++, me parece más sencillo. Además creo que la programación orientada a objetos es mejor. Saludos, a ver cómo me va el codeblocks. Yo creí que el gnu gcc era exclusivo de gnu/linux.
Primero, no es recomendable usar funciones de C con funciones de C++, así que yo te recomendaría quitaras la libreria stdio.h, pues aparte de que no es necesaria, en proyectos mas grandes la lias combinando, en cualquier caso si necesitas usar funciones de C en C++ lo mejor es usar las librerias cstdio.h o la que corresponda,pero lo dicho, no es nada recomendable.
No es necesario que definas tantas variables, pues solo estas reservando memoria que en realidad no necesitas, C/C++ pueden imprimir las operaciones "al vuelo" (lo que hacen en mi código).
No sé si borland sea menos estrcito con la sintaxis, pero lo recomendable es usar los namespaces, es decir, para un cout deberías escribir esto: std::cout, para un endl: std::endl, para un cin: std::cin, etc... para evitar el escribir std:: justo después de declarar las librerias puedes definir el namespace por defecto (hecha un vistazo a mi código) te ahorras lios y compilara en cualquier compilador :-P
int main() -> esta es tu función principal, tu "bucle infinito", aqui es donde se ejecuta el programa.
return 0 -> es lo que tu programa regresará en caso de que se haya ejecutado y terminado correctamente, por lo generla 0 = todo bien, 1 = error.
#include <iostream>usingnamespace std;int main(){int a, b;cout<<"introduce el valor de a"<< endl;cin>> a;cout<<"introduce el valor de b"<< endl;cin>> b;cout<<"a mas b es igual a: "<< a+b << endl;cout<<"a menos b es igual a: "<< a-b << endl;cout<<"a por b es igual a: "<< a*b << endl;cout<<"a entre b es igual a: "<< a/b << endl;//si corres esto desde windows necesitaras poner un cin.get()//en Linux sobra...//cin.get()return0;}
#include <iostream.h>#include <stdlib.h>#include <stdio.h>int main(){int a=0, b=0, c=0, d=0, e=0, f=0;printf("Ingresa el valor de a: ");
scanf("%d",&a);printf("Ingresa el valor de b: ");
scanf("%d",&b);
c=a+b;
d=a-b;
e=a*b;
f=a/b;cout<<"a mas b es igual a:"<< c << endl;// para que es el endl?cout<<"a menos b es igual a:"<< d << endl;cout<<"a por b es igual a:"<< e << endl;cout<<"a entre b es igual a:"<< f << endl;
system("pause");}
El endl es como el \n en C y tu código si funciona sólo que antes de que veas los rersultados se cierra, en ese código q puse lo unico diferente son los printf paar q el usuario sepa q debe ingresar un numero y el system("pause") y por eso la libreria stdlib.h
Ya ví mi error, sólo tenía que apretar un número, apretaba enter y sólo bajaba. ¡Yupi, sí sirve mi código! Eso de scanf &/%##"$ y no se qué paso. Prefiero cout. Y no me gusta usar más librerías porque eso hace más lento mi programa.
Pero no es una crítica, por el contrario, voy empezando y cualquier comentario sobre mi código (mmm, usé de ingrediente algo de xxzeroxx :) es bien recibido. Muchas gracias.
¿Error?
Que error te da??
Me dice
Namespace name expected;
estoy usando el borland c++, ¿si lo compilas en archlinux te da el mismo error?
Y si le quito eso de using namespace std y otro par de ajustes (como lo tenía antes) sí me va.
Nop
A mi me compila sin problemas...
Es por el compilador Borland que estas usando, no sé si cumpla con los estandares, yo uso el GNU G++ por si quieres probarlo, Code::Blocks lo incluye creo..
Saludos.
Demonios
Haber cuánto dura el w7, después instalaré linux mint a ver qué tal.
Mmm
Estoy aprendiendo en c o c++, porque la idea es primero en c y luego en c++ (en la escuela se supone que es c puro), tu código es de c o de c++? ¿Podrías poner uno en c y otro en c++ por favor? Para ver las diferencias.
Hello World
Te pongo un Hello world en C y otro en C++
C:
C++:
Para leer cosas en C++ usamos cin, en C se usa scanf, un usuario mas abajo te puso un código en C, el mio es C++.
Saludos.
Así me quedó a mí
C:
C++:
En cuanto a c:
-No entiendo porqué usar stdlib.h
-¿No hace falta getchar()?
En cuanto a c++:
-Borland no acepta el using namespace std. Cambiaré a codeblocks lo antes posible.
-¿No hace falta cin.get()?
-¿Qué ventajas y desventajas tienen cada uno de los lenguajes?
-Y muchas gracias xxzeroxx :)
Repondiendo
Creo que si sobra stdlib, la verdad lo hice de memoria xD
getchar() y cin.get() yo no los uso en mis programas, solo en "pruebas rápidas".
Yo veo como la mayor ventaja de C el hecho de que es un lenguaje de nivel bajo, lo que te da un poder enorme...
En cuanto a la ventaja de C++, el hecho de que es orientado a objetos, es simplemente grandioso.
Saludos.
Getchar y cin.get no los usas
¿Pero si se ocupan no? ¿O el gnu gcc no lo ocupa? Mmm... ¿C++ es más lento? Porque me parece más fácil
Nop
Ningún compilador te obligará a poner código que no necesitas, en este caso getchar y cin-get...
La lentitud es muuuuy relativa, depende de la compilación, aunque no deberia ser notorio para nada.
Si te gusta C++ adelante, no necesitas aprender C para pasarte a C++, de hecho no es recomendable pues usan paradigmas distintos, lee sobre la programación orientada a objetos, pues sin ella C++ no sirve, ahi radica su verdadero poder...
Saludos.
Gracias
La verdad es que tengo que aprender c en la escuela. Pero estudiaré por mi cuenta c++, me parece más sencillo. Además creo que la programación orientada a objetos es mejor. Saludos, a ver cómo me va el codeblocks. Yo creí que el gnu gcc era exclusivo de gnu/linux.
Algunos consejos
Primero, no es recomendable usar funciones de C con funciones de C++, así que yo te recomendaría quitaras la libreria stdio.h, pues aparte de que no es necesaria, en proyectos mas grandes la lias combinando, en cualquier caso si necesitas usar funciones de C en C++ lo mejor es usar las librerias cstdio.h o la que corresponda,pero lo dicho, no es nada recomendable.
No es necesario que definas tantas variables, pues solo estas reservando memoria que en realidad no necesitas, C/C++ pueden imprimir las operaciones "al vuelo" (lo que hacen en mi código).
No sé si borland sea menos estrcito con la sintaxis, pero lo recomendable es usar los namespaces, es decir, para un cout deberías escribir esto: std::cout, para un endl: std::endl, para un cin: std::cin, etc... para evitar el escribir std:: justo después de declarar las librerias puedes definir el namespace por defecto (hecha un vistazo a mi código) te ahorras lios y compilara en cualquier compilador :-P
int main() -> esta es tu función principal, tu "bucle infinito", aqui es donde se ejecuta el programa.
return 0 -> es lo que tu programa regresará en caso de que se haya ejecutado y terminado correctamente, por lo generla 0 = todo bien, 1 = error.
Saludos.
macho...
Dices C, pero esto es identico, no, pero muy parecido a C++.. ...ya se que C++ es C, pero mejorado, pero aun asi, que se parezcan tanto...xD
Yo no se de C, si acaso se lo normal de C++, ademas, parece que avajo ya te an respuesto, asi que yo mejor me callo...xD
I like:
Sí
A ver si me consigo un compilador "c-only", porque yo tampoco se ya muy bien qué lenguaje es éste. En fin.
Más sencillo
Saludos.
#include
El endl es como el \n en C y tu código si funciona sólo que antes de que veas los rersultados se cierra, en ese código q puse lo unico diferente son los printf paar q el usuario sepa q debe ingresar un numero y el system("pause") y por eso la libreria stdlib.h
¿Y qué es el \n en c?
Ya ví mi error, sólo tenía que apretar un número, apretaba enter y sólo bajaba. ¡Yupi, sí sirve mi código! Eso de scanf &/%##"$ y no se qué paso. Prefiero cout. Y no me gusta usar más librerías porque eso hace más lento mi programa.
Pero no es una crítica, por el contrario, voy empezando y cualquier comentario sobre mi código (mmm, usé de ingrediente algo de xxzeroxx :) es bien recibido. Muchas gracias.
\n
Es para una nueva línea, por ejemplo si yo pongo:
cout << "esta frase se mostrara en\n dos lineas"; el resultado sería
esta frase se mostrara en
dos lineas
Con un endl, es algo diferente...
cout << "esta frase se mostrara en" << endl << " dos lineas"; el resultado es
esta frase se mostrara en
dos lineas
Saludos.