Looking for objective-c Keywords? Try Ask4Keywords

Objective-C Language Привет, мир


пример

Эта программа выведет «Hello World!».

#import <Foundation/Foundation.h>

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

#import - это предпроцессорная директива, которая указывает, что мы хотим импортировать или включать информацию из этого файла в программу. В этом случае компилятор скопирует содержимое Foundation.h в фреймворке Foundation в начало файла. Основное отличие между #import и #include заключается в том, что #import достаточно «умный», чтобы не перерабатывать файлы, которые уже были включены в другие #includes.

В документации на языке C объясняется main функция.

Функция NSLog() будет печатать строку, предоставленную на консоли, а также некоторую информацию для отладки. В этом случае мы используем строковый литерал Objective-C: @"Hello World!" , В C вы должны написать это как "Hello World!" , однако, Foundation Foundation Foundation добавляет класс NSString который предоставляет много полезных функций и используется NSLog. Самый простой способ создать экземпляр NSString выглядит так: @" string content here " .

Технически NSLog () является частью Foundation Foundation Apple и фактически не является частью языка Objective-C. Тем не менее, Foundation Framework является повсеместным во всех программах Objective-C. Поскольку Foundation Framework не является открытым исходным кодом и не может использоваться вне разработки Apple, существуют альтернативы open-source для структуры, которые связаны с OPENStep и GNUStep .


Компиляция программы

Предполагая, что мы хотим скомпилировать нашу программу Hello World, hello.m из одного файла hello.m , команда для компиляции исполняемого файла:

clang -framework Foundation hello.m -o hello

Затем вы можете запустить его:

./hello

Это приведет к выводу:

Hello World!

Возможные варианты:

  • -framework : определяет структуру, используемую для компиляции программы. Поскольку в этой программе используется Foundation, мы включаем структуру Foundation.

  • -o : Этот параметр указывает, в какой файл мы хотим вывести нашу программу. В нашем случае hello . Если не указано, значением по умолчанию является a.out .