UNIXwork

WTF C Teil 3

16. January 2020

Aus der beliebten Serie WTF C:

bool trigraphs_are_available() {
    // Are trigraphs available??/
    return false;
    return true;
}

Was passiert hier? Zwei return-Statements hintereinander ergeben doch keinen Sinn! Kann die Funktion jemals true zurückgeben?

Auch dieses mal handelt es sich um standardkonformes C und es gibt auch Fälle, in denen die Funktion true liefert. Der Trick ist hier, dass im Kommentar etwas versteckt ist, nämlich am Ende ein Trigraph. Es ist nämlich in C möglich, manche Sonderzeichen durch alternative Zeichenketten auszudrücken. Am Ende des Kommentars steht der Trigraph ??/, der zu einem Backslash aufgelöst wird und ein Backslash am Ende eines einzeiligen Kommentars erweitert diesen auf die nächste Zeile. Wenn also der Compiler Trigraphen unterstützt, sind die ersten beiden Zeilen der Funktion ein Kommentar und übrig bleibt nur return true.

Gefunden habe ich das Beispiel hier.

Autor: Olaf | 0 Kommentare | Tags: c, wtf

Glade: UI Builder und Powerpointer-Ersatz

20. September 2018

Und womit macht ihr so eure Präsentationen? Powerpoint, Impress oder LaTeX? Wieso nicht mit Glade, das Klickibunti-Tool um GTK-Interfaces zusammenzubasteln. Ein paar Slides, oder ein GUI, wo ist da der Unterschied.

Die spannende Frage ist, ob man dann irgendwann mit Powerpoint GUI-Anwendungen designen kann. Das wäre doch der absolute Durchbruch. Direkt aus einer Bullshit-Präsentation eine App generieren.

Aber mal ernsthaft, egal womit man seine Präsentation erstellt, ich bin der Meinung, dass das Ausgabeformat immer pdf sein sollte. Das maximiert zum einen die Wahrscheinlichkeit, dass man es auf jedem Gerät fehlerfrei anzeigen kann, zum anderen kommt man gar nicht erst in die Versuchung mit Animationen zu arbeiten.

Autor: Olaf | 0 Kommentare | Tags: glade, gtk, gnome, powerpoint, wtf

WTF C Teil 2

17. September 2017

Nach Teil 1 hier die Fortsetzung:

#include <stdio.h>
int main(int argc, const char* argv[printf("Hello, World!\n")]) {}

Gefunden hab ich das Beispiel hier.

Autor: Olaf | 0 Kommentare | Tags: c, wtf

WTF C

12. October 2016

Was für eine Sprache ist dieser seltsam aussehender Code? Sieht aus wie C, aber irgendwas ist da falsch.

%:include <stdio.h>

int main(int argc, char **argv)
<%
    char str<::> = "World";
    printf("Hello %s!\n", str);
    return 0;
%>

Es handelt sich dabei tatsächlich um standardkonformes C.

Autor: Olaf | 0 Kommentare | Tags: c, wtf