Patrocinadores

www.playocio.com



www.pspypda.es

Hola Mundo

Tutoriales de Programacionmx

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*/ Válido


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:

 

 

4.666665
Votos totales: 4.7 (6 votos)

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de PTC2

Duda?

el notepad++ tambien sirve para este tipo de programacion?

Ya que uso este programa para programar para PSP y estoy un poco familiarizado con est.

Graxx


Hola viva beta y el PSP la mejor consola

Imagen de Guillermo_Cornielle

Puedes

Peronecesitaras las librerias para programar, asi que es mejor el Dev-C++.

Un saludo.


psp.scenebeta.com más que una web una comunidad unida.

Quiero una DS!!!!!!!!!!!

Imagen de PTC2

Graxx

Muchas graxx me lo bajo enseguida.

los tutos estam muy buenos felicitaciones.


Hola viva beta y el PSP la mejor consola

Imagen de Link_4Ever

Me pasa casi lo mismo que a Lelio

Pero a mi nisiquiera me aparece la pantalla, solamente aparece que carga algo y termina en menos de un segundo... Pero no abre ni una sola cosa... ¿? ¿So? ¿Y? ¿?


Link_4Ever entra en accion...

¡Entren a http://buzz.igg.com/top/1814364 y conozcan los 8 mejores juegos Online que ha

Imagen de Guillermo_Cornielle

Si fueras

Tan amable de poner el codigo de lo que has hecho, seria mas facil ayudarte.

Saludos. 


psp.scenebeta.com más que una web una comunidad unida.

Quiero una DS!!!!!!!!!!!

Imagen de Link_4Ever

Puess

Al principio lo escribí a mano, como dice en el Tuto. Pero al ver que no me sirvió, copié y pegué el código de arriba:

 

/* Mi primer programa en C: Hello world
Tu nombre
La fecha */
#include <stdio.h>
int main()
{
    printf("Hola Mundo");
    
    return 0;
}

 


Link_4Ever entra en accion...

¡Entren a http://buzz.igg.com/top/1814364 y conozcan los 8 mejores juegos Online que ha

Imagen de Guillermo_Cornielle

Ok

creo Que ya se cual es el problema, escribe lo qe voy a escribir abajo:

#include <stdio.h>

#include <windows.h>

int main()

{

printf("Hola Mundo");

return 0;

system("PAUSE");

}

Listo, ya con eso debe de solucionarse el problema.

Un saludo.                                                                              

 


psp.scenebeta.com más que una web una comunidad unida.

Quiero una DS!!!!!!!!!!!

Imagen de lelio

no me va

que tal! saludos!, poes nada que a la hora de correr el "hola mundo" aparece la pantalla negra y de inmediato se cierra, alguien sabra cual es el problema? para asegurarme de que no era el hola mundo que yo habia hecho el del fallo copie el que viene en el tutorial y pasa lo mismo, bueno gracias de antemano.saludos!

Imagen de Tanos

Lee

No me tomé horas enteras en el tutorial para que no se lea completo. En la última parte del tutorial se encuentra la rspuedta.

Saludos


Llamado a los interesados en Lua: Terminemos juntos este proyecto.

Imagen de lelio

hehe sorry

ya lo hago gracias, no le habia seguido porque poes no me daba resultado con el primer ejercicio asi que pregunte antes de seguir , por cierto esta muy bien todo, gracias de nuevo, saludos!

Imagen de Tanos

Es un placer

Más cuidado a la próxima, no sé si será mi forma de redactar, pero mis tutoriales son un conjunto, tienes que leer todo (tal vez 2 veces) para entender y después preguntar.

Al final, para eso existen los comentarios.

Saludos


Llamado a los interesados en Lua: Terminemos juntos este proyecto.

Imagen de xXZeroXx

Duda Hola mundo

esto lo encontre en los foros de ubuntu

#include <stdio.h>
int main()
{
printf("Hola mundo");
printf("\n");
return 0;
}

como veran es diferente a lo que Tanos escribio aqui, alguien podria comentarme la diferencia entre estos 2, uso ubuntu hardy heron, y uso pico como editor para el codigo (creo que se llama editor, la verdad no se XD) 

Imagen de Tanos

Esa es una forma más larga de hacer lo mismo.

El segundo printf lo que hace es dar un salto de línea, el cual lo podrías incluir en el primer printf o simplemente omitirlo como en mi tutorial.

Y por otra parte no escriben el getchar(), lee el tutorial para saber su importancia.


Llamado a los interesados en Lua: Terminemos juntos este proyecto.

Imagen de xXZeroXx

Otra duda XDD

Primero lo escribi tal como dijiste, pero a la hora de ejecutarlo me tiro el siguiente error:

./ejemplo: line 37: typedef: orden no encontrada
./ejemplo: line 46: typedef: orden no encontrada
./ejemplo: line 47: typedef: orden no encontrada
./ejemplo: line 48: typedef: orden no encontrada
./ejemplo: line 49: typedef: orden no encontrada
./ejemplo: line 52: typedef: orden no encontrada
./ejemplo: line 53: typedef: orden no encontrada
./ejemplo: line 54: typedef: orden no encontrada
./ejemplo: line 55: typedef: orden no encontrada
./ejemplo: line 56: typedef: orden no encontrada
./ejemplo: line 57: typedef: orden no encontrada
./ejemplo: line 62: __extension__: orden no encontrada
./ejemplo: line 63: __extension__: orden no encontrada
./ejemplo: line 71: __extension__: orden no encontrada
./ejemplo: line 72: __extension__: orden no encontrada
./ejemplo: line 78: __extension__: orden no encontrada
./ejemplo: line 79: __extension__: orden no encontrada
./ejemplo: line 80: __extension__: orden no encontrada
./ejemplo: line 81: __extension__: orden no encontrada
./ejemplo: line 82: __extension__: orden no encontrada
./ejemplo: line 83: __extension__: orden no encontrada
./ejemplo: line 84: __extension__: orden no encontrada
./ejemplo: line 85: __extension__: orden no encontrada
./ejemplo: line 86: __extension__: orden no encontrada
./ejemplo: line 87: __extension__: orden no encontrada
./ejemplo: line 88: error de sintaxis cerca de token no esperado `}'
./ejemplo: line 88: `__extension__ typedef struct { int __val[2]; } __fsid_t;'

Al principio crei que era por que lo habia escrito mal, asi que mejor copie y pege pero obtuve el mismo error.

Los comandos que estoy usando son:

pico hola.c

despues "limpia" la terminal y comienzo a escribir, despues guardo y cierro.

Para compilar: cpp hola.c -o hola

y a la hora de ejecutarlo ./hola

Justo despues de eso me tira el error que puedo hacer?

Imagen de Guillermo_Cornielle

Pues

Si puedes poner tu codigo, seria mas facil ayudarte.


psp.scenebeta.com más que una web una comunidad unida.

Quiero una DS!!!!!!!!!!!

Imagen de xXZeroXx

Que codigo?

Disculpa pero a que codigo te refieres?

Imagen de Guillermo_Cornielle

No acabas

De decir que te da error al tratar de compilar, pues entonces yo te digo que coloque t codigo aqui para ayudarte.

aahh, ya me confundi XD. 


psp.scenebeta.com más que una web una comunidad unida.

Quiero una DS!!!!!!!!!!!

Imagen de xXZeroXx

Lo escribi mal

Me referia a que la larga lista es el error, y lo de abajo es lo que hice.

Imagen de Guillermo_Cornielle

Ok

Pues no se XD, aun no se compilar de esa manera, bueno suerte, espero que lo logres.


psp.scenebeta.com más que una web una comunidad unida.

Quiero una DS!!!!!!!!!!!

Imagen de P22

El dev tirnr la libreria

El dev tirnr la libreria conio.h esque no me deja usrlo

Saludos


SKA-P  Al poder !!!!!!!!!!!!!!!!!!!!!!!!!

Programar , un hobbie que nunca acaba.

Imagen de Guillermo_Cornielle

Pero

Bueno, es cierto que no la tiene( o no se)  peor en este tutorial, no habla nada de esa libreria, para que la quieres.

PD: si buscas un entorno de programacion que tenga esa libreria, te recomiendo el, DJGPP, buscalo en google.

Aunque mejor te recomiendo el DEV- C++, es muy buen aunque no tenga esa libreria conio.h, aunque como te dijo tanos, es sustituile. 


psp.scenebeta.com más que una web una comunidad unida.

Quiero una DS!!!!!!!!!!!

Imagen de Tanos

Si la tiene

Pero no es una librería estándar. Viene incompleta. Yo recomiendo que se usen otros métodos para sustituir a esa librería.

Saludos

PD: Yo no he meniconado a Conio.h en el tuto :P 


Llamado a los interesados en Lua: Terminemos juntos este proyecto.

Imagen de churristian8

no compilado

Tengo un problema, me dice al presionar F9 "Codigo fuente no compilado"

¿que es esto?

Saludos y gracias por acercarnos este tipo de lenguaje que algunos estabamos deseando tocar ;)


Con portátil y Scenebeta

churristian8 ya no pierde la cabeza :D

Imagen de Tanos

Qué raro

Nunca me había ocurrido algo así. Mejor ve a la barra de menues y seleccione Compilar desde el menú Ejecutar.

Saludos


Llamado a los interesados en Lua: Terminemos juntos este proyecto.

Imagen de churristian8

se queda

Se queda como si lo hubiese compilado, pero luego como si nada, no hay .exe solo se guarda como archivo "C souce file"

 

Saludos


Con portátil y Scenebeta

churristian8 ya no pierde la cabeza :D

Imagen de Tanos

¿Qué versión usas?

O más bien ¿Usas Dev-C++? Si es así, desintalalo, e instala la versión que está en portada.

Saludos


Llamado a los interesados en Lua: Terminemos juntos este proyecto.

Imagen de churristian8

Es el mismo

Es el mismo que esta en portada, ademas, me lo descargué a proposito para intentar hacer esto.


Con portátil y Scenebeta

churristian8 ya no pierde la cabeza :D

Imagen de churristian8

Me salio

No me pregunteis como lo hice porque no tengo ni idea, pero lo conseguí.

Gracias Tanos por el interés que has mostrado.

Saludos


Con portátil y Scenebeta

churristian8 ya no pierde la cabeza :D

Imagen de Tanos

Qué raro

Ahmmm... Al iniciar por primera vez ¿Creaste la caché?

Explica paso a paso lo que haces.


Llamado a los interesados en Lua: Terminemos juntos este proyecto.

Imagen de Guillermo_Cornielle

que pasa

Es bueno o malo crear la cache, pues yo la cree, y despues la quite ya que siempre me pedia crearla y pues mejro le di a no.


psp.scenebeta.com más que una web una comunidad unida.

Quiero una DS!!!!!!!!!!!

Imagen de Tanos

No tengo idea :P

Siempre la creo.


Llamado a los interesados en Lua: Terminemos juntos este proyecto.

Muchas gracias

Muchas gracias por crear este amm tuto? curso?

bueno lo que sea, es para aprender C, que bueno porque estaba pensando en aprender este lenguaje, y ahora podre comenzar

de nuevo gracias, y espero sigues con esto, cuando terminen las vacaciones

 

Saludos 


Imagen de Ulind

Problema :S

Inetnte hacer mi Hola mundo en C peor ya epiezo con mis errores raroa jajaja

 ¿Porque el archivo es en cpp?

No deberia ser en exe...???

Edito: Aqui os dejo el scrpt

/* Autor: Ulind*/
/* Mi primer programa en C */
#include<stdio.h>
int main()
{
    printf("Hola Mundo creado por Ulind")
    return 0;
}
getchas()0;

Antes las notas las tenia con // pero ya q no me funciono, las puse asi...aunque lo sabia q no se arreglarian xD


subir imagenes 

Imagen de Tanos

Al compilar

Al compilar en Dv-C++, si presionas F9 se guardará el SRC y se creará tu exe.

Te recomiendo que te leas la introducción de nuevo.

El .cpp es un SRC de C++, tienes que seleccionar .C al momento de guardar.

Tanto el SRC como el EXE se guardan en la misma carpeta.


Llamado a los interesados en Lua: Terminemos juntos este proyecto.

Imagen de Ulind

no, yo presione F9 para

no, yo presione F9 para coplilaro cuando lo hixe y no se creo el exe. Cuando se compila, ma sale seleccionada en color rojo la frase :

return 0;

Edito: Ya lo arregle, habia olvidado un ; despues de Hola mundo.

 


subir imagenes 

Mu Wena

Te lo has currado tio, para cuando es el proximo?

Imagen de Tanos

Este es un proyecto a largo plazo

Intentaré subir un capítulo por semana, claro, ahora que son vacaciones, pero espero tener el mismo ritmo cuando regrese a los estudios.

Saludos


Llamado a los interesados en Lua: Terminemos juntos este proyecto.

Imagen de c r o n o s

genial

espero sigas haciendo estos grandiosos tutoriales.

saludos



"el tiempo devora a sus hijos, ni los dioses se salvan de sus fauces"

Imagen de basuvi

nuchas gracias!, me encanta

nuchas gracias!, me encanta aprender cosas nuevas y esta es una de las que mas ganas tenia de aprender, un tuto muy bn hecho ;-)

Imagen de Ulind

Tanos tio, muy buen

Tanos tio, muy buen tutorial...

Siempre me ha gustadi saber alguna cosita en C :D

Salu2


subir imagenes 

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.