Hello World, su primer programa (Guía de programación de C#)
Actualización: noviembre 2007
El siguiente programa de consola es la versión de C# del tradicional programa "Hello World!", el cual muestra en pantalla la cadena Hello World!.
// A Hello World! program in C#
using System;
namespace HelloWorld
{
class Hello
{
static void Main()
{
System.Console.WriteLine("Hello World!");
// Keep the console window open in debug mode.
System.Console.WriteLine("Press any key to exit.");
System.Console.ReadKey();
}
}
}
Examinemos ahora las partes importantes de este programa.
Comentarios
La primera línea contiene un comentario:
// A Hello World! program in C#
Los caracteres // convierten el resto de la línea en un comentario. Un bloque de texto también se puede convertir en comentario si se incluye entre los caracteres /* y */, por ejemplo:
/* A "Hello World!" program in C#.
This program displays the string "Hello World!" on the screen. */
El método Main
Cualquier programa en C# debe contener un método Main, en el cual se inicia y se termina la ejecución. Este método es donde se crean objetos y se ejecutan otros métodos.
El método Main es un método estático que reside dentro de una clase o una estructura. En el ejemplo anterior de "Hello World!", reside en una clase denominada Hello. Declare el método Main de una de las maneras siguientes:
Puede devolver void:
static void Main() { //... }
También puede devolver un valor de tipo int:
static int Main() { //... return 0; }
Puede utilizar argumentos con los dos tipos devueltos:
static void Main(string[] args) { //... }
O bien
static int Main(string[] args) { //... return 0; }
El parámetro del método Main es una matriz de tipo string que representa los argumentos de la línea de comandos utilizados para llamar al programa. Observe que, a diferencia de C++, esta matriz no incluye el nombre del archivo ejecutable (exe).
La llamada a ReadKey al final del método Main impide que la ventana de la consola se cierre antes de que pueda leer el resultado al ejecutar en modo de depuración presionando F5.
Para obtener más información sobre cómo utilizar argumentos de la línea de comandos, vea el ejemplo de Main() y argumentos de línea de comandos (Guía de programación de C#) y Cómo: Crear y utilizar archivos DLL de C# (Guía de programación de C#).
Entrada y salida
Los programas de C# utilizan normalmente los servicios de entrada y salida que ofrece la biblioteca en tiempo de ejecución de .NET Framework. La instrucción System.Console.WriteLine("Hello World!"); utiliza el método WriteLine, que es uno de los métodos de salida de la clase Console de la biblioteca en tiempo de ejecución. Muestra el parámetro cadena en la secuencia de salida estándar seguido por una nueva línea. Otros métodos de Console se utilizan para otras operaciones de entrada y salida. Si incluye la directiva using System; al principio del programa, puede utilizar directamente las clases y métodos de System sin escribir el nombre completo. Por ejemplo, puede llamar en su lugar Console.WriteLine, sin especificar System.Console.Writeline:
using System;
Console.WriteLine("Hello World!");
Para obtener más información sobre métodos de entrada y salida, vea System.IO.
Compilación y ejecución
El programa "Hello World!" se puede compilar creando un proyecto en el Entorno de desarrollo integrado (IDE) de Visual Studio, o bien mediante la línea de comandos. Utilice el símbolo del sistema de Visual Studio o ejecute vsvars32.bat para incluir el conjunto de herramientas de Visual C# en la ruta de acceso del símbolo del sistema.
Para compilar el programa desde la línea de comandos:
Cree el archivo de código fuente mediante cualquier editor de texto y guárdelo con un nombre como Hello.cs. Los archivos de código fuente de C# utilizan la extensión .cs.
Para invocar el compilador, ejecute el comando:
csc Hello.cs
Si el programa no contiene errores de compilación, se creará un archivo Hello.exe.
Para ejecutar el programa, escriba el comando:
Hello
Para obtener más información sobre el compilador de C# y sus opciones, vea Opciones del compilador de C#.