2

TkDocsによると:

ここでの「1.0」はテキストを挿入する場所を表し、「行 1、文字 0」として読み取ることができます。これは、最初の行の最初の文字を指します。プログラマーが通常行と文字を参照する方法に関連する歴史的な慣例については、行番号は 1 から始まり、文字番号は 0 から始まります。

この慣習については聞いたことがありませんでした。Google で関連するものを見つけることができませんでした。誰か私にこれを説明してもらえますか?

4

2 に答える 2

3

それは実際には慣習にすぎませんが、ここに提案があります。

文字位置は、通常、2 つの文字間の位置への「ポインター」である Java イテレーターと同じように考えられます。したがって、最初の文字はインデックス位置 0 の後の文字です。たとえば、部分文字列は 2 つの文字間の位置の間で取得されます。

一方、行の位置は一般に、.NET 列挙子のように考えられます。これは、アイテム自体への「ポインター」であり、その間の位置ではありません。したがって、最初の行は位置 1 の行です。

于 2010-01-03T15:43:31.390 に答える
3

Tkのテキストウィジェットについて言及していると思います。マニュアルページには次のように書かれています:

この番号付けスキームを使用する他の UNIX プログラムとの一貫性を保つために、行には 1 から番号が付けられます。

ただし、どの Unix ツールについて話しているのかはわかりません。

更新: コメントで述べたように、多くの UNIX テキスト操作ツールは 1 から行番号を付け始めているようです。また、tcl/tk は UNIX 起源であるため、基盤となる OS 環境と可能な限り互換性を持たせることは理にかなっています。

于 2010-01-03T15:51:58.537 に答える