Am 25.03.2015 um 12:27 schrieb Hans-Peter Diettrich:
deshalb so, wie es ist.
Zuweisung) ist.
enum{Hund,Katze,Maus} und eine Funktion die das Viehzeug im Klartext darstellt. Diese Funktion mit einem anderen Enum aufgerufen erzeugt keine Warnung aber die Ausgabe
nachgedacht hat. Z.B. bei Rechnungen der Form a*b/c, in denen Zwischenergebnisse den Wertebereich verlassen, das Endergebnis aber wieder passt. Oder bei Mittelwertbildungen.
Wenn man bedenkt, dass du am Montag noch nicht einmal den Unterschied zwischen C, C++ und der "Arduino-Sprache" kanntest, hast du dich aber schnell zum Experten entwickelt, wenn du jetzt schon das Typsystem beurteilen und deine Abneigung kundtun magst.
Myn
PS: Wie programmiert man den Arduino eigentlich in dem ach-so-tollen Delphi?
Bei der *expliziten* Verwendung von Modulo geht (aus matehmatischer
katastrophaler Verlust, wenn man eine Variable auf Null setzt ;-)
Bei einer ganzzahligen Division ist das durchaus der Fall, und das sollte jeder Programmierer beachten. Beim Rechnen mit Gleitkommazahlen sind Verluste systembedingt, auch das sollte jeder Programmierer wissen und beachten. Oder worauf wolltest Du hinaus?
In Pascal ist eine enum ein eigener Datentyp, der (dank Typsicherheit) mit anderen Datentypen inkompatibel ist, selbst wenn diese die gleiche
Texten in Frage: type THKM = (Hund, Katze, Maus); const HKM: array[THKM] of string = ('Hund', 'Katze', 'Maus');
Und noch etwas Reklame: Ein "set" ist die Abbildung einer enum auf einen ganzzahligen Typ, womit sich Bitfummeleien bei Conroller-Ports leicht einsparen lassen: type TPortBits = (pinLED1, pinButton1, ); TPortSet = set of TPortBits; var Pins: TPortSet absolute PORTB; //Abbildung auf physikalischen Port Pins := Pins+[pinLED1,pinLED2]; //Ausgabe if pinButton1 in Pins then ... //Abfrage
kann, und immer noch eine Meldung ausgeben kann, wenn keine Funktion auf
Das ist ein kritischer Punkt, weil ein Compiler da (als Optimierung) oft
(Ich auch nicht ;-)
Recherche nicht mal leicht zu erkennen. Eigentlich sollten unkommentierte Typecasts verboten werden, das hilft aber nicht wirklich weiter. Deshalb wurde ja schon in C++ eine ganze Reihe von
Am 25.03.2015 um 22:43 schrieb Hans-Peter Diettrich:
eigentlich egal) ohne typecast eine Warnung und MIT explizitem typecast keine Warnung gibt und Du wolltest es da genau anders herum. Bei Delphi sollte das nun wieder anders sein? Das erschliesst sich mir alles nicht
des zu schreibenden Quelltextes definiert und keineswegs die Methodik, Algorithmen und Datenstrukturen.
das immer den gleichen Eindruck wie Visual Basic) und meine Erfahrungen
PROM giessen konnte und viele Dinge die die Hardware betrafen mit Assembler-Code angehen musste.
mit "int cnt" und typedef. Da war ohne Typecast keine Warnung notwendig,
Die Syntax einer Programmiersprache ist doch wirklich nur Geschmackssache, wesentlich ist die Semantik. Wenn jemand Pascal nur
Oder hast Du nur Syntax und Semantik verwechselt?
damit Anwendungsprogramme zu schreiben. Und weil es so einfach war, einen Pascal Compiler aufzubohren, kamen viele Bastler auf die Idee, daraus eine praxistaugliche Sprache zu machen - mit unterschiedlichem Erfolg, je nach ihren Kenntnissen und Anforderungen. Und zu den
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.