2011-06-21 1 views
13

誰でも新しい行に使用されているシンボルは何ですか?Objective-Cの新しい行の構文は何ですか?

C言語では、改行に'\n'を使用しています。 Objective-Cでは何を使用しますか?

は同じですか?

+0

これは同じです。詳細は[このリンク] [1]を参照してください。 [1]:http://www.techotopia.com/index.php/Objective-C_2.0_Data_Types#Special_Characters.2FEscape_Sequences –

答えて

20

Objective-CはCの拡張です。Objective-Cでは '\ n'も機能します。

14

それは(the documentation等から、(\n)と同じだが、それは単に新しいラインまたはテキストが中に処理されるか文脈新しい段落、のかどうかに応じて、トピックへの多くのがありますあなたがあなたの質問にiphoneタグを持っているので、彼らは、Objective-Cの[暗黙的]とCocoaの両方をカバーするため)ここでココアのドキュメントを参照:

行または段落の区切りが可能ないくつかの方法があります。表現される。歴史的には\n,\rおよび\r\nが使用されている。 Unicodeでは、明確な段落区切り文字、(Cocoaは定数NSParagraphSeparatorCharacterを提供します)と明確な行区切り文字U+2028(Cocoaは定数NSLineSeparatorCharacterを提供します)を定義しています。

ココアのテキストシステムでは、NSParagraphSeparatorCharacterは一貫して段落区切りとして扱われ、NSLineSeparatorCharacterは段落区切りではない改行、つまり段落内の改行として一貫して扱われます。しかし、他の状況では、これらの文字がどのように扱われるかに関する保証はほとんどありません。たとえば、POSIXレベルのソフトウェアでは、しばしば、\nだけが改行として認識されます。古いMacintoshソフトウェアの中には\rしか認識されないものがあり、Windowsソフトウェアの中には\r\nしか認識しないものがあります。行と段落の間には区別がないことがよくあります。

使用する必要がある行や段落区切り文字は、データの使用方法やプラットフォームによって異なります。 Cocoaのテキストシステムでは、\n\r、または\r\nがすべて段落区切りとして認識されます。これはNSParagraphSeparatorCharacterに相当します。段落区切りを挿入すると、たとえばinsertNewline:で、\nが使用されます。通常NSLineSeparatorCharacterは、改行や改行ではなく、たとえばinsertLineBreak:で、またはHTML <br>要素を表すためにのみ使用されます。

改行が段落区切りではなく改行として特に指定されている場合は、通常NSLineSeparatorCharacterを使用します。そうでない場合は、他のどのソフトウェアがテキストを処理する可能性があるかによって、\n\r、または\r\nを使用することができます。 Cocoaのデフォルトの選択は通常\nです。

+0

NSLineSeparatorCharacterが表す文字を知っていますか? – vakio

+0

@vakio:はい、上の引用符にあります:U + 2028、つまりUnicodeコードポイント2028、「曖昧でない」行区切り文字。 –

+0

ああ、ありがとう。見逃した。私は\ l何かを探していた。 – vakio

1

これは同じです。 Objective-cはCのスーパーセットなので、Cのものの大半はobjective-Cでも動作します。

+1

* Cのすべてが* Objective-Cで動作します。 – JeremyP

2

それは同じだが、あなたがコンソールに印刷されている場合、あなたは

NSLog(@"This is a console statement\n on two different lines"); 

この情報がお役に立てば幸いを使用する必要があります。

1

これは同じです。目的に合わせて "\ n"は改行に使用します。

関連する問題