Ein Bekannter von mir will wohl ein kleines Hallo-Welt-Programm in C++ schreiben. Er nutzt Windows und kommt mit seiner komischen kommerziellen Entwicklungsumgebung natürlich nicht klar, also musste ich erstmal prollen, wie leicht das unter Linux mit einer einzigen Zeile in der Shell geht:
$ echo ‘#include<iostream>’>hallowelt.cpp&&\
echo ‘int main(){std::cout<<”Hallo Welt!\n”;}’>>\
hallowelt.cpp&&g++ -o hallowelt hallowelt.cpp&&./hallowelt
Jetzt hab ich mir überlegt, dass das doch bestimmt noch wesentlich kürzer geht. Wer hat da Ideen? Ich denke mir, dass man beispielsweise die Datei mit dem Sourcecode einsparen könnte.
Tags: c++, hello world
Marginale Kürzung:
echo -e ‘#include\nint main(){std::couthw.cpp&&g++ hw.cpp -ohallowelt&&./hallowelt
auf meinem System (Debian sarge) gelingt folgendes:
echo ‘main(){printf(“Hallo Welt!”);}’ | gcc -xc – && ./a.out
joschi: Stimmt, auf das mit echo -e hätte ich auch kommen können. So wollte ich es ursprünglich machen, aber ich hab dann versäumt, in die Manpage zu schauen, wie der Parameter aussieht.
Solo.Kuryakin: Es gelingt zwar, aber es wirft eine Compilerwarnung aus, das ist nicht unbedingt feine englische Art. ;)
@MichiK: ich habe nur behauptet, daß es auf so meinem System gelingt – auf meinem sogar ohne, daß ich eine Fehlermeldung erhalte – aber natürlich ist es weder guter Stil noch empfehlenswert – aber das war ja auch nicht verlangt
Solo.Kuryakin: Das ist C und nicht C++. Das ist durchaus ein Unterschied, auch wenn es manche gerne ignorieren. ;)
joschi: ja und nein. es ist C und es ist C++. C++ bietet nur zusätzliche sprachelemente. nicht jeder unterschied macht einen unterschied im wahrheitswert.
naja, das einzige was man mir ankreiden könnte, wäre, daß ich gcc statt g++ geschrieben hab. asche auf mein haupt