Woher kommt die NULL?

OP #4065172
Lesenswert?

Immer wenn im Angelsächsischen etwas ganz Böse ist oder etwas besonders 
schlimmes hervorgehoben werden soll wird auf etwas Bezug genommen das 
mit etwas "deutschem" zu tun hat. Braucht Hollywood einen Bösewicht, hat 
er einen deutschen Namen oder man nimmt gleich einen deutschen 
Schauspieler (div. Saltzman/Broccoli-Verfilmungen). Wilde Musikgruppen 
verwenden gerne böse Umlaute, die sogenannten Rock Döts.
Weiterhin kenne ich den Begriff "Halt", wenn etwas final zu Ende geht:
("... the system came to a crashing halt").

Warum wird bei Zeigern zB. auf NULL geprüft und zB. nicht auf ein 
definiertes ZERO? Auch hier wieder: Sollte der Speicher crashen so sind 
die Deutschen daran beteiligt...?
#4065187
Lesenswert?

Umlaute gibt es ja nun auch in anderen Sprachen als nur im Deutschen, 
und was das böse Wort "halt" angeht, schau doch lieber mal nach ob es 
nicht schlicht und ergreifend ein englisches Wort ist.

Wenn Du schon solche Beispiele suchst, hätt ich halt was belastbares 
genommen, wie die oft genutzten Worte "kaputt" (auch mal mit einem 't' 
geschrieben), "verboten" oder "uber".
(Firma: RUB) #4065189
Lesenswert?

"Null" aus dem englischen uebersetzt bedeutet im deutschen "nichts" oder 
"leer". wenn du dir mal lua anschaust, da heist es "nil" und damit ist 
nicht der Fluss gemeint. Es wird auch nicht wie "Null" gesprochen, 
sondern eher wie "Nall".

Nach deiner Argumentation haben alle Laender, bei denen auf dem 
Stopschild "Stop" steht, ein problem mit Deutschland. Die Deutschend 
sind schuld das wir an der kreuzung anhalten muessen? fuck it...
#4065207
Lesenswert?

Joachim ... schrieb:
> Immer wenn im Angelsächsischen etwas ganz Böse ist oder etwas besonders
> schlimmes hervorgehoben werden soll wird auf etwas Bezug genommen das
> mit etwas "deutschem" zu tun hat. Braucht Hollywood einen Bösewicht, hat
> er einen deutschen Namen oder man nimmt gleich einen deutschen
> Schauspieler (div. Saltzman/Broccoli-Verfilmungen). Wilde Musikgruppen
> verwenden gerne böse Umlaute, die sogenannten Rock Döts.
> Weiterhin kenne ich den Begriff "Halt", wenn etwas final zu Ende geht:
> ("... the system came to a crashing halt").

Nicht zu vergessen den "Kindergarten".
(Firma: Nisch-Aufzüge) Persönliche Seite #4065729
Lesenswert?

ts ts ts

Man sollte halt nicht über scheinbare Lehnwörter in einer fremden 
Sprache und deren Sinn lamentieren wenn man dieser Sprache nicht mächtig 
ist.

erst informieren dann verstehen das sparrt verwirrende Konstrukte zu 
erfinden.

Noch so ein peggy da Problem.

Es ist möglich aus viel Nichtwissen viel Unfug zu konstruieren und den 
schlussendlich zu glauben in der Meinung etwas zu wissen.

Namaste
#4066093
Lesenswert?

Rufus Τ. Firefly schrieb:

> Schon mal außerhalb eines Lehrbuches eines gesehen, bei dem das so ist?

Und selbst wenn, ist es das Problem des Compilers, den Zahlenwert 0 auf 
genau diese Adresse umzumappen.

Für einen C Programmierer ist der numerische Wert im Programm immer 0.
Den einzigen Kritikpunkt den ich habe ist, warum ist der NULL-Pointer 
ein int und kein void *. Zu Zeiten von K&R hätte ich das ja noch 
verstanden, damals gab es void noch nicht. Aber später?
OP #4066230
Lesenswert?

Autor: Winfried J. (Firma: Nisch-Aufzüge) (winne) schrieb:
>erst informieren dann verstehen das sparrt verwirrende Konstrukte zu
>erfinden.
Daß die Deutschen schuld sind wenn der Speicher crasht war ja auch nicht 
ganz ernst gemeint.

Trotz allem: Im Zusammentreffen zwischen Deutschen und Amerikanern ist 
der Deutsche immer der Bösewicht, der Amerikaner stets der charmante 
gute Held...
#4066243
Lesenswert?

Kaj G. schrieb:
> Nach deiner Argumentation haben alle Laender, bei denen auf dem
> Stopschild "Stop" steht, ein problem mit Deutschland. Die Deutschend
> sind schuld das wir an der kreuzung anhalten muessen? fuck it...

Haben das nicht die Amis hierzulande eingeführt? Die alten dreieckigen 
Schilder mit blauem Hintergrund waren nach meiner Erinnerung mit "Halt" 
beschriftet.
Persönliche Seite #4066272
Lesenswert?

Klaus I. schrieb:
> Haben das nicht die Amis hierzulande eingeführt? Die alten dreieckigen
> Schilder mit blauem Hintergrund waren nach meiner Erinnerung mit "Halt"
> beschriftet.

Schnell mal einen Hirnfurz hinzuschreiben ist einfacher als belastbare 
Information zu bringen, nicht wahr?
Selbst wenn sich die "Suche" danach auf ein einziges Wort beschränkt, 
welches griffbereit z.B. in Wikipedia nur darauf wartet.

Ich bin ja wirklich kein Freund der United States of Arrogance, aber 
selbst die Herrschaften von "God's Own Country" sind nicht in der Lage, 
alles auf dieser Welt zu steuern.
Persönliche Seite #4066400
Lesenswert?

Da die Reform nichts reformiert, sondern nur verschlechtert und 
unlogischer gemacht hat, sie also ihr Ziel vollkommen verfehlt hat, ist 
sowohl der Gebrauch der Anführungszeichen als auch des Wortes sogenannt 
mehr als gerechtfertigt.

Dinge wie "Hacken", "Ergebniss", "Rießen Problem", "Zuweißen", "nen", 
"dass/das" sowie das komplette Versagen bei der Zeichensetzung, die seit 
der "Reform" zunehmend zu beobachten sind, sind mehr als deutliche 
Indizien dafür.

Und dafür haben wir jetzt "Majonäse" und "Stopp". Das war es wert.
#4066461
Lesenswert?

Rufus Τ. Firefly schrieb:
> Dinge wie "Hacken", "Ergebniss", "Rießen Problem", "Zuweißen", "nen",
> "dass/das" sowie das komplette Versagen bei der Zeichensetzung, die seit
> der "Reform" zunehmend zu beobachten sind, sind mehr als deutliche
> Indizien dafür.

Diese Art "Rechtschreibung" liegt m.E. eher an der modischen Lehrweise 
"Freies Schreiben", wo die Schüler erstmal so schreiben dürfen wie sie 
es hören und irgendwann später müssen die angelernten Fehler dann 
ausgemerzt werden. Wer "Dea hont schbilt im gatn" schreibt, wird auch 
noch gelobt. Super Sache.

Ansonsten gebe ich Dir recht: die Reform ist teilweise echt für'n 
Asch... ähh Arsch.
#4066502
Lesenswert?

@Dirk W. (gnulf)

>Diese Art "Rechtschreibung" liegt m.E. eher an der modischen Lehrweise
>"Freies Schreiben", wo die Schüler erstmal so schreiben dürfen wie sie
>es hören und irgendwann später müssen die angelernten Fehler dann
>ausgemerzt werden. Wer "Dea hont schbilt im gatn" schreibt, wird auch
>noch gelobt. Super Sache.

Für diesem Mist müste man die Verantworlichen und die "Pädagogen" an die 
Wand stellen! Das ist aktive Volksverdummung! (aber es ist ja so 
gewollt, ein bestenfalls mittelmäßiges Volk ist ein leicht regierbares 
Volk)

>Ansonsten gebe ich Dir recht: die Reform ist teilweise echt für'n
>Asch... ähh Arsch.

Von Elfenbeiturmbewohnern und Bürokraten ohne Realitätkontakt 
verbrochen!
Persönliche Seite #4066510
Lesenswert?

Lothar Miller schrieb:
> Rufus Τ. Firefly schrieb:
>> Dinge wie "Ergebniss"
> Naja, zum Glück immer noch falsch:
> http://www.korrekturen.de/beliebte_fehler/ergebniss.shtml

Eben. Es ist falsch. Egal mit welcher "Rechtschreibung".

Aber die Reform ist der Auslöser für die komplette Verunsicherung. 
Früher gab es zwei Möglichkeiten, richtig oder falsch. Jetzt gibt es 
drei Möglichkeiten, richtig(neu), richtig(alt) und falsch.

Und das überfordert viele Leute ganz offensichtlich restlos.
#4066578
Lesenswert?

@ Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite

>Aber die Reform ist der Auslöser für die komplette Verunsicherung.

Alles gewollt.

>Früher gab es zwei Möglichkeiten, richtig oder falsch. Jetzt gibt es
>drei Möglichkeiten, richtig(neu), richtig(alt) und falsch.

Darum richtig alt. Telephon, Photograpie, Physik. Stop!

(daß man sich mit ordentlicher Rechtreibung als altes Eisen outen kann, 
ist schon krasse Scheiße, eyyyy! ;-))
#4066592
Lesenswert?

Rufus Τ. Firefly schrieb:
> Aber die Reform ist der Auslöser für die komplette Verunsicherung.
> Früher gab es zwei Möglichkeiten, richtig oder falsch. Jetzt gibt es
> drei Möglichkeiten, richtig(neu), richtig(alt) und falsch.
>
> Und das überfordert viele Leute ganz offensichtlich restlos.

Das dient alles nur zur Aufweichung der deutschen Werte damit wir besser 
in die Euro-Suppe passen und nicht versehentlich zu weit oben schwimmen.
#4066960
Lesenswert?

Rufus Τ. Firefly schrieb:
> Uhu Uhuhu schrieb:
>> Wenn das System, auf dem der Code laufen soll, auf die Adresse 0 eine
>> Speicherseite mapt, dann ist es keine gute Idee NULL als 0 zu
>> definieren.
>
> Schon mal außerhalb eines Lehrbuches eines gesehen, bei dem das so ist?

Auf Adresse 0 RAM zu haben ist ja nun nicht wirklich ungewöhnlich. (nur 
als Beispiel Cortex-M0, RAM remapped)

Dass NULL in diesen Fällen umdefiniert wird, habe ich bisher aber nicht 
gesehen.
#4067000
Lesenswert?

Stefan Rand schrieb:
> Karl Heinz schrieb:
>> Den einzigen Kritikpunkt den ich habe ist, warum ist der NULL-Pointer
>> ein int und kein void *.
>
> Wo soll da ein int sein? Selbstverständlich ist der Nullpointer ein
> Zeiger.

Ich interpretiere dein 'Nullpointer ein Zeiger' als (void *)-Aussage.


#define NULL 0                   /* see <stddef.h> */
in Keil ARM
/ARM/ARMCC/include/stdlib.h

C90 erlaubte zumindest noch beides
An integer constant expression with the value 0, or such an expression 
cast to type void *, is called a null pointer constant

Wobei,
... NULL which expands to an implementation-defined null pointer 
constant
#4067014
Lesenswert?

Stefan Rand schrieb:
> Steffen Rose schrieb:
>> Ich interpretiere dein 'Nullpointer ein Zeiger' als (void *)-Aussage.
>>
>> #define NULL 0                   /* see <stddef.h> */
>> in Keil ARM
>> /ARM/ARMCC/include/stdlib.h
>
> Na und? Das ist kein int. Das ist ein Zeiger. Der Nullpointer.
>
> Lest doch alle einfach mal http://c-faq.com/null/

Worauf bezieht Du dich?
NULL - ja, ist ein null pointer
0 - jein, ist erstmal ein int. Punkt 5.7 empfiehlt daher bei größeren 
Pointerrepresentationen auch auf 0L zu erweitern.
0 - ja, ist auch als null pointer zulässig. Aber das schieb ich bereits.
Moderator Persönliche Seite #4067015
Lesenswert?

Stefan Rand schrieb:
> 0 ist ein Nullpointer.

Für mich ist es immer noch eine numerische Konstante.  Muss ich dir
das entsprechende Kapitel aus dem C-Standard erst raussuchen? ;-)

Dass man diese Konstante mit einem Zeiger vergleichen oder einem
solchen zuweisen darf, ist was anderes.  Das macht aus der numerischen
Konstante selbst aber noch keinen Zeiger.
#4067041
Lesenswert?

Jörg Wunsch schrieb:
> Für mich ist es immer noch eine numerische Konstante.  Muss ich dir

Da hast du schlicht unrecht.

> das entsprechende Kapitel aus dem C-Standard erst raussuchen? ;-)

Mach mal. Der Standard sagt das Gegenteil.

Wenn ich a = a + 0; schreibe, dann ist 0 eine numerische Konstante.

Wenn ich char a* = 0; schreibe, dann ist 0 ein Zeiger. Der Nullpointer.

Warum ist das so schwer zu begreifen, daß es auf den Kontext ankommt?


In C++ sind bei class A... und template <class T>... die beiden 
identischen Zeichenfolgen "c" "l" "a" "s" "s" doch auch zwei 
verschiedene Dinge, die nur dasselbe Schlüsselwort abbekommen haben.
#4067056
Lesenswert?

Stefan Rand schrieb:
> Lies bitte einfach die FAQ.

Sorry, aber so globale Aussagen liebe ich...
Etwas genauer wäre schon für eine zielführende Diskussion hilfreich.

> Nicht ein Integer 0, der als
> Pointer interpretiert wird oder so was.

Warum geht dann Kapitel 5.7 auf die Erweiterung nach 0L ein?

> Im Zeigerkontext
Was ist ein Zeigerkontext? Ich glaub nicht, dass es sowas im Standard 
gibt.
Und den habe ich oben bereits zitiert.

An integer constant expression with the value 0 ... is called a null 
pointer constant.
Moderator Persönliche Seite #4067285
Lesenswert?

Stefan Rand schrieb:

>> das entsprechende Kapitel aus dem C-Standard erst raussuchen? ;-)
>
> Mach mal. Der Standard sagt das Gegenteil.
1
An integer constant expression with the value 0, or such an expression cast to type
2
void *, is called a null pointer constant.55) If a null pointer constant is converted to a
3
pointer type, the resulting pointer, called a null pointer, is guaranteed to compare unequal
4
to a pointer to any object or function.

Erst die Konvertierung in einen Zeiger macht aus der „null pointer
constant“ einen „null pointer“, aber erstmal ist die 0 eine
ganzzahlige Konstante.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren