サーチ…


バージョン

バージョン発売日
1.0 1983-01-01
2.0 2007年10月27日
現代 2014-03-10

こんにちは世界

このプログラムは "Hello World!"を出力します。

#import <Foundation/Foundation.h>

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

#importはプリプロセッサディレクティブです。このファイルからの情報をインポートまたはプログラムに含めることを示します。この場合、コンパイラはFoundationフレームワークのFoundation.hの内容をファイルの先頭にコピーします。 #importと#includeの主な違いは、#importが他の#includeにすでに含まれているファイルを再処理しないほど "スマート"であることです。

C言語のドキュメントでは、 main機能について説明しています。

NSLog()関数は、コンソールに提供された文字列といくつかのデバッグ情報を出力します。この場合、Objective-Cの文字列リテラルを使用します。 @"Hello World!" 。 Cでは、これを"Hello World!"と書いてい"Hello World!"しかし、Appleの基盤フレームワークは、多くの便利な機能を提供するNSStringクラスを追加し、NSLogによって使用されます。 NSStringインスタンスを作成する最も簡単な方法は次のようなものです: @" string content here "

技術的には、NSLog()はAppleのFoundation Frameworkの一部であり、Objective-C言語の一部ではありません。しかし、Foundation Frameworkは、Objective-Cプログラミングのいたるところにあります。 Foundation Frameworkはオープンソースではなく、Appleの開発以外では使用できないため、 OPENStepGNUStepに関連するフレームワークの代替手段があります


プログラムのコンパイル

1つのhello.mファイルで構成されるHello Worldプログラムをコンパイルしたい場合、実行ファイルをコンパイルするコマンドは次のようになります。

clang -framework Foundation hello.m -o hello

次に、それを実行することができます:

./hello

これは出力されます:

Hello World!

オプションは次のとおりです。

  • -framework :プログラムをコンパイルするために使用するフレームワークを指定します。このプログラムはFoundationを使用しているため、Foundationフレームワークが含まれています。

  • -o :このオプションは、プログラムを出力するファイルを指定します。私たちの場合、 hello 。指定しない場合、デフォルト値はa.outです。



Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow