Sagen Sie beispielsweise beiläufig in Java / C ++, dass 'a'
das erste Zeichen von "abc"
oder das null ist?
Sagen die Leute beides und es wird immer mehrdeutig sein, oder gibt es eine tatsächliche Konvention?
Ein Zitat aus Wikipedia auf Zeroth Artikel:
In der Informatik beginnen Arrayreferenzen oft auch bei
0
, sodass Computerprogrammierer in Situationen, in denen andere möglicherweise zuerst verwendet werden, z. B. Null verwenden.
Dies scheint die Hypothese zu stützen, dass es immer mehrdeutig sein wird.
Danke an Alexandros Gezerlis ( siehe seine Antwort unter ), um dieses Zitat zu finden, von Wie man wie ein Informatiker denkt: Lernen mit Python von Allen B. Downey , Jeffrey Elkner und Chris Meyers, Kapitel 7 :
Der erste Buchstabe von
"banana"
ist nichta
. Es sei denn du bist ein Informatiker. Aus perversen Gründen beginnen Computerwissenschaftler immer damit, von Null an zu zählen. Der 0. Buchstabe (null-eth) von"banana"
istb
. Der 1. Buchstabe (one-eth) ista
und der 2. Buchstabe (zwei-eth) istn
.
Dies deutet darauf hin, dass wir als Informatiker die natürliche Semantik von "first", "second" usw. ablehnen sollten, wenn wir mit 0-basierten Indexierungssystemen arbeiten.
Dieses Zitat legt nahe, dass dort vielleicht ARE offizielle Entscheidungen für bestimmte Sprachen sind, also habe ich diese Frage [language-agnostic]
gestellt.
Es ist das erste Zeichen oder Element im Array, aber es befindet sich im Index Null.
Der Begriff "first" hat nichts mit dem absoluten Index des Arrays zu tun, sondern einfach seine relative Position als niedrigstes indiziertes Element. Turbo Pascal zum Beispiel erlaubt beliebige Indizes in Arrays (sagen wir von 5 bis 15). Das Element in Array [5] wird immer noch als erstes Element bezeichnet.
Um aus diesem Wikipedia-Artikel zu zitieren:
Der Begriff "null" ist nicht er selbst mehrdeutig, es schafft Mehrdeutigkeit für alle nachfolgenden Elemente des Sequenz, wenn Kontext fehlt, da sie werden "erste", "zweite", etc. im Konflikt mit dem normalen Alltagsbedeutungen dieser Wörter.
Also würde ich "zuerst" sagen.
Wahrscheinlich subjektiv, aber ich nenne es das erste Element oder Element Null. Es ist das erste und, Isaac Asimovs Gesetze der Robotik beiseite, ich bin nicht einmal davon überzeugt, dass Zeroth ein echtes Wort ist: -)
Per Definition wird alles, was dem ersten vorausgeht, zum ersten und alles andere um eins verschoben.
Ich würde den meisten Antworten hier zustimmen, die sagen, das erste Zeichen, das auf Null Index ist, aber nur für den Rekord, ist das Folgende aus Allen Downeys Buch "Python for Software Design":
So ist b der 0. Buchstabe ("null-eth") von "Banane", a ist der 1. Brief ("One-eth"), und n ist der 2. ("Zwei-eth") Brief.
Somit entfernt er die Mehrdeutigkeit, indem er entweder:
verwendeta) eine Zahl und dann "th", oder b) ein Wort und dann "-eth".
Die C- und C ++ - Standards sagen "Anfangselement" und "erstes Element", was dasselbe bedeutet. Wenn ich mich erinnere, um eindeutig zu sein, sage ich "Anfang", "null" oder "zuerst von Null". Aber normalerweise sage ich "zuerst". Dieses Bananen-Zeug ist entweder eine humorvolle Übertreibung oder ein bisschen bonkers (ich vermute ersteres - es ist nur eine Möglichkeit, 0-Indizierung zu erklären). Ich glaube nicht, dass ich jemanden kenne, der "zuerst" "Index 1 eines 0-indizierten Arrays" sagen würde, es sei denn, sie hätten im selben Absatz zuerst "null" gesagt, um klar zu machen, was sie bedeuten / p>
Es hängt davon ab, ob Sie ein Fan von Isaac Asimovs Roboter -Reihe sind oder nicht.
Tags und Links language-agnostic terminology conventions