Büchse der Pandora
Offensichtlich gibt es keinen Standart dafür. Beispiel Code
mit ein wenig Erklärung würde mir sehr helfen !
Natürlich gibt es keinen Standard, weil es dem Konzept einer Hochsprache wie C++ oder modernen Betriebssystemen entgegen steht.
Denn man möchte gerade versuchen, die fachliche Aufgabe so weit wie möglich von der technischen Umsetzung zu entkoppeln.
Moderne Programmiersprachen haben dazu schon einmal alle Interaktion mit der Umwelt in Bibliotheken ausgelagert, die dann wiederum abstrahieren. Du musst also gar nicht wissen, ob ein angesprochener Drucker über serielle, parallel oder USB-Schnittstelle angeschlossen ist, wenn Du irgendwelche Daten dorthin schicken willst.
Auch moderne Betriebssysteme arbeiten nach diesem Prinzip und entkoppeln den Benutzer so weit wie möglich von der konkreten Technik. Deshalb müssen sich Anwenderprogramme auch nicht mehr jedes für sich um die Konfiguration einer RS232-Schnittstelle kümmern.
Ja, üblicherweise wird Dir ein modernes Betriebssystem sogar den Zugriff auf diese technische Schicht verweigern, weil es die Kontrolle darüber behalten will. Schließlich ist Dein Programm nicht der einzige Prozess, der auf dem Rechner laufen wird oder der ausführende User hat gar nicht die Rechte, mit irgendwelcher Technik rumzuspielen.
Willst Du also direkt etwas mit einer technischen Komponente anfangen, musst Du tief in das jeweilige System einsteigen und auf den Komfort verzichten, den Dir sonst Betriebssystem und Hochsprache bieten. Du benötigst dann eine Menge betriebssystem- und ggf. gerätespezifische Bibliotheken und vor allem Verständnis des Zielsystems. Für manche Funktionen reicht es auch nicht, ein Anwendungsprogramm zu schreiben, sondern der Zugriff ist nur für Gerätetreiber erlaubt, die das System mit einer höheren Berechtigung laufen lässt.
Um es kurz zu machen: Ja, für kaum eine andere Programmiersprache gibt es so gute Möglichkeiten, direkt an technische Details heranzukommen, weil es entsprechende Programmierschnittstellen gibt.
Aber Du verlässt damit den Bereich, der standardisiert werden kann. Nur mit wesentlich mehr Wissen, Aufwand und stark eingeschränkter Portabilität kannst Du so etwas realisieren.
Und dann liegt die Herausforderung zu 99% auf Seiten des Betriebssystems und nicht auf Seiten von C++.
Ciao, Allesquatsch
Übrigens gibt es natürlich auch ganz einfach gestrickte Systeme, die nicht den Ballast komplexer Betriebssysteme und Benutzeroberflächen haben. Dort kann es recht einfach zu bedienende Entwicklungsumgebungen geben, um so etwas Unkomplexes wie eine RS232 anzusprechen. Auf kleinen Experimentierplattformen oder DOS-Rechnern kommt man mit wesentlich weniger Know-how an die Technik ran.