Objective-C Language Hola Mundo


Ejemplo

Este programa dará salida a "Hello World!"

#import <Foundation/Foundation.h>

int main(int argc, char * argv[]) {
    NSLog(@"Hello World!");
}

#import es una directiva de preprocesador, que indica que queremos importar o incluir la información de ese archivo en el programa. En este caso, el compilador copiará el contenido de Foundation.h en el marco de Foundation en la parte superior del archivo. La principal diferencia entre #import y #include es que #import es lo suficientemente "inteligente" para no reprocesar los archivos que ya se han incluido en otros #includes.

La documentación del lenguaje C explica la función main .

La función NSLog() imprimirá la cadena proporcionada a la consola, junto con cierta información de depuración. En este caso, usamos un literal de cadena de Objective-C: @"Hello World!" . En C, escribirías esto como "Hello World!" Sin embargo, Foundation Framework de Apple agrega la clase NSString , que proporciona una gran cantidad de funcionalidades útiles, y es utilizada por NSLog. La forma más sencilla de crear una instancia de NSString es la siguiente: @" string content here " .

Técnicamente, NSLog () es parte de Foundation Framework de Apple y en realidad no es parte del lenguaje Objective-C. Sin embargo, Foundation Framework está presente en toda la programación de Objective-C. Dado que Foundation Framework no es de código abierto y no se puede usar fuera del desarrollo de Apple, existen alternativas de código abierto al marco que están asociadas con OPENStep y GNUStep .


Compilando el programa

Suponiendo que deseamos compilar nuestro programa Hello World, que consiste en un solo archivo hello.m , el comando para compilar el ejecutable es:

clang -framework Foundation hello.m -o hello

Entonces puedes ejecutarlo:

./hello

Esto dará como resultado:

Hello World!

Las opciones son:

  • -framework : especifica un marco para usar para compilar el programa. Como este programa utiliza Foundation, incluimos el marco Foundation.

  • -o : Esta opción indica a qué archivo nos gustaría enviar nuestro programa. En nuestro caso hello . Si no se especifica, el valor predeterminado es a.out .