C und Casting

Persönliche Seite #7289264
Thomas schrieb:
> (void) programm (float b)

So kann man kennzeichnen, dass "programm" einen Wert zurückliefert, der 
vom Aufrufer aber nicht verwendet wird.

"programm" wirkt also einzig über die Seiteneffekte und ist damit in 
gewissem Maße der Gegenpol einer const Funktion, die also keine 
Seiteneffekte hat und nur über ihren Rückgabewert wirkt.

Un genaueres sagen zu können wäre aber der konkrete Kontext wichtig und 
Code, der compilierbar ist.
#7289472
Thomas schrieb:
> was passiert da mit dem Casting?
> (void) programm (float b)

program (float b) sieht aus wie ein Teil einer Funktionsdeklaration. 
(void) sieht aus wie ein cast. Beides passt aber nicht zusammen, ergibt 
also keinen Sinn.
Somit wäre die richtige Antwort: Der Compiler meldet einen Fehler. Also 
zeig bitte, wie der Code in Wirklichkeit aussieht.
#7289494
Den Aufruf einer Funktion (bzw. deren Rückgabewert) nach void zu casten 
dokumentiert für den Leser des Codes oder auch ein statisches 
Analyse-Tool, dass der Rückgabewert der Funktion bewusst ignoriert wird.

Die Funktion wird also nur wegen seiner Seiteneffekte aufgerufen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 3 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.