Ya estas listo para hacer tu primer programa en C. No es nada del otro mundo, pero servirá enormemente paraque te des una idea de qué es programar y las particularidades del lenguaje. Estoy hablando del famosísimo Hola Mundo, el primer programa por excelencia, no llegarás muy lejos sin él.
Vamos a empezar. Abre tu IDE preferido, en mi caso es Dev-C++ e inicia un nuevo documento. Esto me lo pude haber ahorrado, pero es que hay cada despistado, me incluyo.
Voy a escribir aquí todo el programa, posteriormente explicaré línea por línea éste. Escribe el siguiente código, no copies y pegues, es mejor que lo escribas tú msimo, favorece el aprendizaje.
/* Mi primer programa en C: Hello world Tu nombre La fecha */ #include <stdio.h> int main() { printf("Hola Mundo"); return 0; }
Ahora a analizar el programa parte por parte:
/* Mi primer programa en C: Hello world
Tu nombre
La fecha */
Esto es un comentario. Se usa para describir el programa, señalar su autor o describir alguna función, son ideales si un proyecto se prolonga mucho, con ayuda de ellos podrás identificar facilmente fragmentos de código, incluso si no has revisado el código por años. Un comentario siempre debe empezar con /* y u prterminar con */, aunque hay otras formas de hacerlos. Es importante aclarar que el compilador no los toma en cuenta, por eso no alterarán tu programa.
Si escribieramos:
Mi primer programa en C: Hello world Tu nombre La fecha
El compilador marcaría un error ya que trataría de interpretar estas líneas y no sabría que hacer con ellas.
Es válido hacer comentarios que ocupen varias líneas, como el ejemplo, o una sola:
/*Esto es un comentario*/
Válido /*Esto es un
comentario*/
Debes cuidar que el comentario se cierre correctamente, si quitáramos el */ al ejemplo anterior, tendriamos como resultado sólo un comentario, todo tu programa quedaría convertido en un comentario y el compilador marcaría un error.
Como decía existe otra forma de establecer un comentario, es valido utilizar una doble barra: //. Como desventaja, no es posible hacer comentarios en varias líneas, pero como punto positivo, no es necesario cerrarlos. Si quisieramos usar las dos barras para el ejemplo anterior, tendrímos que hacerlo así:
//Mi primer programa en C: Hello world //Tu nombre //La fecha
Nunca intentes poner comentarios dentro de los argumentos de una función o dentro de una palabra clave, el compilador marcaría un error.
Pasemos a la siguiente parte.
#include <stdio.h>
Esto es una directiva. Al llamar a una directiva, estaremos indicando al compilador que incluya esta librería (En este caso stdio.h) en el programa. En las librerías se incluyen funciones ya definidas, así, sólo basta con llamarlas. Es el ejemplo estamos llamando a stdio.h que contiene la función printf, que utilizamos en el programa.
Un programa puede contener cuantas directivas decida su autor.
int main()
Esto es la función principal. Todo programa debe de tener una función principal, en ella se específica qué es lo que hará el programa, en el ejemplo imprimirá un "Hola Mundo" en pantalla. El int, viene de Interger o Entero. Más adelante explicaré más a fondo los tipos de datos (int, float, void, etc.) y el main, simplementeindica que es la función principal. Recuerda poner los paréntesis () y siempre debe de estar delimitada por corchetes {}.
{ printf("Hola Mundo");
Esto es el cuerpo del programa. El corchete { indica que ahí empieza la función. printf es una función definida en stdio.h, ésta muestra información por pantalla. C distingue entre mayúsculas y minúsculas, por lo tanto cuida no escribir Printf en vez de printf. Después de llamar a la función, se establecen sus argumentos ("Hola Mundo") esta es la expresíon más simple de printf, simplemente contiene entre comillas "" el texto que se mostrará en pantalla. Fíjate que después de los argumentos hay un punto y coma ; en C son utilizados para separar los comandos, cuida ponerlos, es un error muy común y dificil de encontrar.
return 0; }
Este es un comando que forma parte de tu programa, es recomendable que siempre lo utilices. Aquí se define cuál será el valor que regresará la función en caso de que se haya llevado a cabo correctamente. De nuevo, separamos el comando con ;. Y finalmente cerramos los corchetes }.
Es muy probable, sobre todo si usas Windows, que al ejecutar el programa sólo aparezca una ventana y se cierre inmediatamente. Para evitar esto puedes añadir lo siguiente, antes del return 0;:
getchar();
Esta función se incluye en stdio.h, lo que hace es esperar a que se presione una tecla para cerrar el programa.
También puedes añadir:
system("PAUSE");
El inconveniente de esta función es que muestra un feo mensaje en pantalla y es probable que tengas que incluir la directiva: #include <windows.h>
Ya que entiendes el código, por qué no lo pruebas, escribe el programa de ejemplo en tu editor y después compilalo. En Dev-C++ bastará con presionar la tecla F9.
El resultado será algo como esto:
Comentarios
return 0;
¿como le hago para que quede abierto?
el problema es que cuando le coloco el : despues del return 0; le apreto f9 para compilar y me sale error entonces le saco el : y queda perfecto
asi que en resumidas cuentas que tengo que hacer para que se quede abierto?
/* mi primer programa en c: hello world
xxxxxxxxxxxxxx (tengo muy claro que aqui va el nombre =D)
14/05*/
#include <stdio.h>
int main()
{
printf("hola mundo");
return 0;
}
Cuando colocas : ? no
Cuando colocas : ? no entiendo...
codigo
"Es muy probable, sobre todo si usas Windows, que al ejecutar el programa sólo aparezca una ventana y se cierre inmediatamente. Para evitar esto puedes añadir lo siguiente, antes del return 0;:"
eso dice en la publicacion pero al ponerle : me sale error
alguna idea para que la ventana donde saldra el texto quede abierta? (uso windows)
Es porque los 2 puntos no
Es porque los 2 puntos no van... los pusieron allí por escribir correctamente (creo que les faltó escribir el code completo al final del tutorial, pero en fin).
gracias
bueno en fin que se le hara pero.... ¿tu no sabes que se le pone?
perdon si molesto mucho XD
Sólo debes poner getchar();
Sólo debes poner getchar(); ANTES del return (sin modificar el return, tal y como lo escriben arriba) de tal manera que tu code al final queda tal que...
Gracias
:') gracias por decire como se hace soy nuevo en todo esto de los codigos =D
...
Estoy un poco perdido con el tutorial en la parte de "compilar la aplicación". Lo que ocurre es que no encuentro la opción de compilar la aplicación al terminarla (en este caso estoy con el "Hello World"). Tengo instalado el DevKitPro y Notepad++, ¿Necesito algo mas?
¡Sígueme en Twitter!
mira lo que tienes
que hacer es instalar code::blocks o dev-C++ que son para programar en pc
si vas a hacer uno en dev-C++ apretas F9 y te compila.
PD: a mi el notepad++ personalmente no me gusta mucho
...
Gracias, pero me hubiera gustado utilizar notepad++
yo tenía el problema de que
yo tenía el problema de que no me funcionaba o me decía que no estaba compilado, pero al darle a nuevo proyecto-console apliccation y señalar c en vez de c++ como creo que viene por defecto, me dejó compilar y ya tengo mi .exe con el hello world
Aquí mi humilde código:
#include <stdio.h>
#include <windows.h>
int main()
{
printf("Hola SCENEBETA");
getchar ();
return 0;
}
Me aparecen 3 archivos en escritorio,Makefile.win otro dev y otro .o, además de .exe
salu2
A mí tampoco se me habre el
A mí tampoco se me habre el exe :S y es el mismo code ya lo e revisado muchas veces
tienes instaladas
Tienes instalado el MinGW, por otro lado, si nos dices que compilador usas podemos intentar buscar una solucion.
Saludos.
Uso el dev-c
Uso el dev-c
Te da algun mensaje de error
Si te da algún mensaje de error ¿puedes ponerlo aquí?
Ya lo he solucionado. Saludos
Ya lo he solucionado. Saludos y gracias
Que era al final??
Que era al final??
haber yo me he bajado el
haber yo me he bajado el porgrama ese y e copiado el codigo segun esta pero luego lo quiero provar y me salen errores a que se debe gracias
Me ha gustado, soy nuevo en
Me ha gustado, soy nuevo en esto.
Pero este programa como le cuesta en compilar?
no se si sera error del ordenador pero al darle al F9 me sale una ventana y se me pone a cargar
“La liberación del hombre de la explotación económica y de la opresión intelectual, social y política, que encuentra su expresión más cabal en la filosofía del anarquismo, es el primer requisito para el perfeccionamiento de una cultura social superior y de una nueva humanidad”.
Rudolf Rocker
A mi me gusto , sinceramente mucho
Ya que siendo sinceros , este tema lo ignoiraba completamente_nob_ y la verdad el tutop me ayudo demasiado a adentarme a este mundo , y al fiunalizarlo me salio bien , señal k aprendi, gracias
reno igniz
No me carga el .exe
Bueno, pues estaba leyéndome los tutos y poniéndolos en práctica para poner en orden los pocos conocimientos que tengo y ampliarlos (sobre todo esto último xD) y empecé por lo más básico para no perderme nada, desde el principio.
Total, que al ir a ejecutar el .exe no se ejecuta. Lo he probado de muchas formas: cargar como administrador (aunque sea yo el administrador), con lo de la compatibilidad (solucionar problemas de compatibilidad creo que se llama), compilando y ejecutando (F9) y ejecutándolo solo; pero nada, que no se abre, se carga (o por lo menos hace un amago de carga, porque se pone a cargar algo), pero que no se abre. Por si tiene algo que ver, uso Windows 7 y el IDE que recomendais, el Dev-C++. El código es este:
Lo que no creo que sea es lo de que se ejecute y se cierre al instante, ya que uso getchar(); para que tenga que tocar una tecla antes de cerrarse.
¿Cómo puedo ejecutar el .exe que se genera?
Espero que me podais ayudar. Gracias por vuestra atención.
Salu2.
¿Quieres estar totalmente informado sobre el universo 3DS? Visita Magic3DS.
También puedes estar al tanto de toda la actualidad de 3DS en Twitter: @Magic3DS
Me parece problema con tu
Me parece problema con tu compilador, porque el código está bien.
Prueba ahora este:
Lo mismo para el compañero de abajo ;)
Mismo problema
Tengo el mismo problema que "magicblack2009" Uso Windows 7 Ultimate y Dev-C++.
mi codigo es este
y cuando intento ejecutarlo no abre.
cuando intento usar system pause:
me aparece "presione una tecla para continuar..."
cuando presiono alguna tecla se cierra.
--------------Doble------------------------
Posible solución;
Creo que mi problema (talvez tambien el de magicblack2009) es que el
dev-c++ me daba a elegir entre windows applicatoin y console
application.
En windows application no me funcionaba (problema
anterior), pero en console si funciona
el codigo usado es
Editado: Para añadir información usa la opción editar debajo de tu último comentario no respondido. Gracias. |Robione22
ayuda
primero te quiero felicitar por el trabajo del tuto que te mandaste esta exelente.
te queria preguntar y perdona lo ignorate que soy pero no me quedo claro cuando habro el programa dev-C++ (vos pusiste que habra un nuevo documento) A qe te referis proyecto o codigo fuente,
si pongo proyecto me habre una ventana en la cual me pone basic: windows applicaion / console aplicion / static library / dll / empty preyect
y despues en opciones de proyecto en C
en C++
o hacer C/C++ mi idioma
como hago
Abre...
Un codigo fuente....la opción proyecto es ya para cuando tengas los conocimientos necesarios para hacer una aplicacion que neceite varios codigos fuentes....no se si me doy a entender
Manual del Perfecto Votante Para un voto libre y justo!.
TheGCProjects
ok
Muchisimas gracias y una vez mas te felicito por la pagina y la ayuda que brindan a los que empiezan esto se valora mucho por que otras paginas si no sabes te bardean mal
Ayuda
Tengo 2 problemas:
primero es que cada vez que entro en dev-C++ tengo que volver a poner lo del idioma y lo de la configuración
segundo es que cuando abro mi "Hello World" se abre y se cierra en menos de un segundo sin que yo toque nada.
Aquí os 'pongo el codigo, nose ponerlo como vosotros, pero aun así.
/* Mi primer programa en C: Hello world
David
02/01/10 */
#include <stdio.h>
int main()
{
printf ("Hola Mundo") ;
return 0;
}
FELIZ AÑO! ^^
Intenta asi
con esto
#include <stdio.h>
int main()
{
printf ("Hola Mundo") ;
getchar();
return 0;
}
Manual del Perfecto Votante Para un voto libre y justo!.
TheGCProjects
Gracias
Muchas gracias, ahora si. Agradezco tu respuesta, acabo de entrar en el mundo del C y estoy mas perdido que un pulpo en un garaje
Listo pero kiero mas!!!
Ya lo logre pero aun falta un detalla:
la forma en como logre poderlo abrir es abriendo un nuevo archivo fuente, pero antes intente abriendo un proyecto y simplemente no puede abrirlo, kisiera que alguien me ayudara diciendome porque no pude abrirlo como un proyecto. Gracias
Me he descargado un librito
Me he descargado un librito de 200 páginas por lo menos, de programación C y C++.
Y para hacer el "hola mundo" (hello world), hay que escribir esto:
Y cual es el resultado? lo mismo que el tutorial, es decir, esto:
Ya me va. Gracias
Ya me va. Gracias
Estamos para ayudar, pero
Estamos para ayudar, pero seria mejor que dieras al boton:
Salu2
Asi me da fallo en getchar
Asi me da fallo en getchar 0;
Qué no es 0, es ( )
Qué no es 0, es ( ) junto!
Salu2
Me da error al compilar si
Me da error al compilar si pongo : en return 0; . Como lo soluciono?
Pon nos el fragmento final
Pon nos el fragmento final, porque segun entiendo pones return 0: cuando es return 0;
No te olvides de la llave al final (})
Saludos ;)
No. Pongo return 0;: y no me
No. Pongo return 0;: y no me lo da por valido
tienes que poner: {
tienes que poner:
Aaahhh!
No puedo, por mas que me leo todo no me sale, y no se que error he cometido, cada vez que resuelvo uno me da otro ;(
Salu2.
Hombre
O usas el system(), o usas el getchar(), pues uno de los dos esta demás y aparte de eso el getchar() está en el lugar equivocado, por así decirlo.
Intenta de esta forma:
O sino de esta:
Creo que en la primera opción, el windows.h sobra xDDD.
Un saludo.
Manual del Perfecto Votante Para un voto libre y justo!.
TheGCProjects
windows.h
Creo que en la primera opción, el windows.h sobra xDDD...
Y en la segunda también ;-)
Ups jajaja...
Me he confundido por el tuto xDDDD.
De todas fromas gracias.
Ohoho!
Perdon, gracias, soy un poco n00b en esto de la programacion en C :P, espero no haberte causado molestia.
Salu2.
Para nada
Con gusto te ayudo, siempre que pueda, para eso estamos ;).
No importas que seas un novato pues lapractica hace al maestro.
Un saludo.
Manual del Perfecto Votante Para un voto libre y justo!.
TheGCProjects
con
esto tambien puedes hacer cosas para psp
exacto
con estos tutoriales puedes aprender la base de programación, aunque te recomendaría que para las dudas de programación en PSP fueses a la sección PSP, un cuadrito muy mono en la parte superior con las letras PSP.
hay podrán resolver las dudas mejor para la PSP, ademas los tutoriales de allí son algo mas avanzados allí, suerte.
Notepad++
Una pregunta, en el notepad++ se gurada como .c
¿como lo combierto a .exe?
Pues
El NotePad++ es un editor muy eficaz, pero lo único que lo hace ''incompleto'', es no tener compilador para los lenguajes de programación, y bueno, es comprensible, ya que no es fácil para tantos lenguajes de programación.
Pero para programar en C/C++ te recomiendo el Dev-C/C++, trae ''todo'' lo necesario para la programación en C/C++ y su propio compilador, y es muy recomendado tanto para novatos (me incluyo) como para expertos.
Manual del Perfecto Votante Para un voto libre y justo!.
TheGCProjects
Compilandolo
Para generar el .exe debes compilar el código.
El tutorial lo menciona.
Salu2