www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Welche Programmiersprache für einfache Windows-Programme?


Autor: Chris (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich hätte gerne gewußt, in welcher(en) Programmiersprache(n) sich
einfache Windows-Programme erstellen lassen, die es ermöglichen, ein
Mikrocontroller-Projekt steuern zu können oder dessen Ausgabewerte auf
dem Bildschirm anzeigen zu können. Die Kommunikation per Terminal ist
mir auf Dauer doch etwas zu puristisch. So etwas wie im beigefügten
Bild stelle ich mir vor, allerdings nicht für USB. Günstig wäre, wenn
man dafür nicht ein riesiges Softwarepaket für hunderte EURO beschaffen
müßte.

Gruß

Autor: florian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn es ganz einfach sein soll, dann kanst du visual basic for
applications (vba) verwenden. hierfür benötigst du lediglich ein
m$-produkt z.b: m$ excel.
um über die serielle schnitstelle zu kommunizieren gib es einige dll's
die recht einfach in ein vba-programm eingebunden werden können (z.B
port.dll - ist glaub von elektor???)

flo

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

Java?

Matthias

Autor: stichprobe-fan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo
Die von dir gezeigte applikation ist (glaube ich) mit der Microsoft MFC
gemacht.(Visual C++)
mfg stichprobe-fan

Autor: ape (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Java tut sich aber schwer mit der komunikation über die serielle
Schnittstelle. Es gab (und gibt es glaub ich immernoch) zwar mal die
sog. COMM-API die das ermöglicht hat, wird aber aus irgend einem grunde
nicht mehr aktualisiert und verweigert bei mir mit neueren Java
Versionen den Dienst.
alternative is ne andere dll nehmen und die über JNI (Java Native
Interface) zu benutzen das is dann aber nicht mehr ganz trivial

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

kurzes surfen zum Thema Visual Basic zeigt, was mich davon trennt:


"There are two versions of Visual Basic for Windows: Standard and
Professional. I use Visual Basic Professional Edition 3.0, but I will
be explaining from the Standard 3.0 perspective. I've had standard,
and I know how annoying it is to read about a cool feature, and realize
you don't have it because you "just" have standard. Standard runs
for about $100.00, and Professional is $300.00. This is worth the money
though! "

http://www.geocities.com/SiliconValley/Bay/5707/vbasic.html

Gruß

Autor: florian (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
@chris
also ich verwende m$ excel 2000 welches die VBA Version 6.0.8714
implementiert hat.
im anhang ist die port.dll und eine refernz zur port.dll.
solltest du ein einfaches beispiel benötigen, lass es mich wissen.

flo

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich verwende purebasic. Es gibt keine Einschränkungen, die
Programmierung ist Prozedural (nix mit dem blöden Objekt-orientiert,
habe ich keine Lust, das auch noch zu lernen).
In ca. 1/2 Stunde hat man eine serielle Kommunikation mit Schaltflächen
und allem drum und dran erstellt (ein windows-editor ist auch dabei).
Und das Beste: Die kompilierten Programme sind extrem klein. An die
15 KB (nein, nicht MB, wie bei VB!!) reichen für eine solche kleine
Anwendung aus, eine "runtime.dll" ist nicht notwendig. Die
Vollversion kostet 59 Euro, eine Trial ist downloadbar.
Der Witz dabei: Alle zukünftigen Updates kostenlos, es ist auch eine
Linux-Version verfügbar. Zugriff auf die API und DirectX ist mit drin,
und außerdem kann man DLLs erstellen.
Ich habe lange nach einem Nachfolger meines heißgeliebten Qbasic
gesucht, und mit purebasic habe ich ihn gefunden.
(nein, ich bekomme keine Provision - aber ich bin so begeistert
davon...)
http://www.purebasic.de

Autor: iceman (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hey, das ist ja mal ein guter Link! Spitze!

Autor: florian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@thkais
gefällt mir nicht schlecht!

wäre vielleicht keine schlechte idee mal ein forum für pc-software auf
mikrocontroller.net aufzunehmen.

Autor: iceman (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch ein Tipp @chris: soweit ich weiß wird der Support für Visual-Basic
von Microsoft in naher Zukunft eingestellt, wegen VB.Net und C#. Bin
mir jetzt nicht 100pro sicher, habe aber im Kollegenkreis jetzt schon
häufiger von gehört. Nur so als Tipp falls Du es Dir kaufen willst.
Aber dieses Purebasic sieht ja auch recht interessant aus und kostet
bei weitem nicht soviel.

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

der Link zu dem Pure-Basic ist wirklich vielversprechend. Die 59 Euro
wären evtl noch zu vertreten. In der kurzen Zeit habe ich natürlich
noch nichts mit der Testversion programmiert. Aber ich überlege, ob ich
die Antwort von thakis zum Volltreffer nominieren soll.:-))

Sensationell:
"In ca. 1/2 Stunde hat man eine serielle Kommunikation mit
Schaltflächen und allem drum und dran erstellt. "


Auch das hört sich gut an:
"Systemvorraussetzungen: Ein beliebiger PC mit Windows 95 oder neuer
oder Ein beliebiger PC mit Linux,..."
Beide beliebige PCs sind bereits vorhanden.

Auch das ist vorteilhaft (von der Homepage):
"Erzeugt sehr kleine Dateien (“Hallo Welt” im Fenster
Programm = 6,53 Kb) die keine externen Runtime Bibliotheken,
Interpreter, Virtual Machines oder DLLs benötigen. Ein vergleichbares
Programm in Dephi ist 400 KB gross, in Visual Basic sind es etwa 1,5
MB.

Denn der beliebige PC hat noch eine alte, kleine Festplatte mit Win95.
Gruß

Autor: ape (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hehe ein vergleichbares Programm in Java ist 615byte lang. naja
jedenfalls die class-Datei, die Java Installation dürfte so in die
100mb gehen :)
dafür ist es komplett kostenlos es gibt extrem gute
Entwicklungsumgebungen (auch umsonst. http://www.eclipse.org) und
plattformunabhängig. und es ist objekt orientiert (ich würde soweit
gehen das als vorteil anzuführen g)
aber das problem mit der seriellen schnittstelle bleibt :/

Autor: Jörg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie sieht's eigentlich mit Tcl/Tk aus?  Ist bei WinAVR ja sowieso
dabei, und wenn ich es richtig sehe, müßte eigentlich auch die seriöse
Schnittstelle benutzbar sein.

Ist als ,,Programmiersprache'' bißchen gewöhnungsbedürftig, aber
immer
noch gut als `rapid prototyping' für bißchen GUIerei geeignet.  Der
Script wird halt interpretiert, aber IMHO ist es immer noch schneller
als Java. ;-)

Autor: AudiTurbo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich habe mit diveresen Programmiersprachen mehr oder weniger
Erfahrungen.
Jede Programmiersprache hat Vor und Nachteile.

Basic, Visualbasic und VBA sind recht einfach aber bei bestimmten
Anwendungen zu langsam. Auch lassen sich keine EXE-Dateien erstellen
die alleine lauffähig sind.

Java ist eher eine Internet-Programiersprache geht aber auch.
Auch ein bisschen unhandlich mit den vielen Dateien.

C++ ist eher für geübte gute Programmierer. Einem Anfänger würde ich
diese
nicht empfehlen schon gar nicht MS Visual C++.


Purebasic und ähnliche sind sicher eine interessante Sache.
Ich möchte keinen zu Nahe treten aber es ist eben eher eine
Programmiersprache
für Randgruppen da die selten profesionell eingesetzt wird.
Ich habe auch mit QBasic angefangen. Wer weiss wie lange der Compiler
noch
weitergebaut wird? Wie aktuell sind die kompiler?

Ich bevorzuge Borland Delphi da es sehr schnell ist relativ einfach
ist.
Delphi ist eine absolut professionelle Programmiersprache.
Man kann damit EXE-Dateien erstellen die auch keine Runtimemodule
brauchen.
Auch ist sehr viel Sourcecode für Delphi im internet erhältlich.
Bei Problemen gibt es viele Delphi-Foren im Internet die man
kontaktieren kann.
Auch ist es so dass für Technische Programme häufig Delphi verwendet
wird.
OK die EXE-Dateien sind ein bisschen gross lassen sich aber mit Winzip
gut
fürs internet komprimieren. Delphi ist für mich die Programmiersprache
mit dem
Delphi Personal ist sogar Gratis.

Spock

Autor: Frank Linde (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So ist es! Und ich dachte, ich wäre inzwischen der einzige Delphianer
unter der Sonne...  ;-)

Gruß, Frank

Autor: Jörg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe auch mit Delphi Programmierung begonnen. Allerdings habe ich noch
nichts für die Serielle-Schnittstelle gefunden weder Doku noch google.

Ich muß einfach nur unter Win95-WinME und WinNT-WinXP (also alle
WinVersionen sollten laufen) die DTR-Leitung setzen können und dann mit
4800Baud laufend Daten empfangen und an eine DLL weitergeben.

Vielleicht habt ihr ja einen Tip bzw. schon Code.

Gruß Jörg

Autor: AudiTurbo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi es gibt tonnen weise mehr oder weniger guten sourcecode oder
Komponenten.

Nur suchen am besten du kommuniziert über ein Forum wie

www.spotlight.de

Es gibt eine sehr gute Adresse aber ich bin nicht mehr sicher wie sie
heisst.
Asynch oder so.


gruss

Autor: BernhardT (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weitverbreitet ist wohl TcomPort von Dejan Crnila. Die Meisten Links die
dazu gefunden habe sind aber tot und wie alt oder gut diese Version
ist: http://www.inspired.sk/delphi/components/c/CPort251.zip .
weis ich nicht.
Ich verwende die Toolbox  Serial com ( Leider nicht wirklich frei) aber
nach unendlichen Anläufen recht ausgereift.
Gruß Bernhard

Autor: Frank Linde (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Suche auf sourceforge.net nach AsyncPro. War früher von TurboPower und
ist jetzt OpenSource/Freeware.

Gruß, Frank

Autor: Frank Linde (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... oder klickst Du hier:

http://sourceforge.net/projects/tpapro/

Gruß, Frank

Autor: Jörg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Frank

Autor: Jörg (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Frank

Danke für den Link von AsyncPro, werde ich mal ausprobieren.

Habe da noch was gefunden SerialNG auf http://www.domis.de

Hat jemand Erfahrung mit einem dieser Tools?

Gruß Jörg

Autor: Steffen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auf die serielle Schnittstelle kann man auch problemlos über die
Windows-API Funktionen zugreifen. Nach dem Öffnen der Schnittstelle mit
OpenFile können über WriteFile Daten geschrieben und über ReadFile
Daten gelesen werden. Mit EscapeCommFunction kann man die
Steuerleitungen setzen/rücksetzen.

Was Delphi anbetrifft, da kann ich mich nur meinen Vorrednern
anschließen. Die wohl beste Delphi Seite ist die Delphi Super Page
http://delphi.icm.edu.pl/. Dort gibt es Unmassen Komponenten Beispiele
usw.

Steffen

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mal ne ganz dumme Frage: Kann es sein, dass Delphi quasi so eine Art
"Pascal für Windows" ist?

Autor: Frankl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es soll drauf aufgesetzt sein. Das ist Adda aber auch ein Bischen.

Autor: Steffen (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Delphi ist der Nachfolger von TurboPascal für Windows.

Steffen

Autor: Armin Kniesel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ....ist für mich die Programmiersprache mit dem Delphi Personal
> ist sogar Gratis.     Spock

Ist nur die 6er Version gratis oder auch die 7?
Ich bin bei Borland.com irgendwie nicht weitergekommen.
Muß man da erst das Programm downloaden (wo?) und sich dann
registrieren?

Armin.

Autor: Rainer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Professionelle Programmierung: MS VC++, C#, Delphi, Java, vielleicht
noch C++Builder - wobei ich C++ vor allem für hardwarenahe
Programmierung vorziehen würde.

Der Rest ist Spielerei, ganz nett, aber halt auch nicht wirklich
verbreitet.

> Auch das ist vorteilhaft (von der Homepage):
"Erzeugt sehr kleine Dateien (“Hallo Welt” im Fenster
Programm = 6,53 Kb) die keine externen Runtime Bibliotheken,
Interpreter, Virtual Machines oder DLLs benötigen. Ein vergleichbares
Programm in Dephi ist 400 KB gross, in Visual Basic sind es etwa 1,5
MB.

HelloWorld in einem Fenster mit allem Drum und Dran in MS C#: 20k.
Immer noch größer, zugegeben, aber 10k auf oder ab machen heute auf
manchen modernen µCs schon kaum Unterschied, und schon gar nicht auf
einem PC.

Autor: Frank Linde (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@thkais:
Delphi ist der aktuelle Sproß aus der langen Serie von Pascal-Compilern
der Firma Borland. Nachdem sich nicht wirklich viele Programmierer für
drei Bildschirmseiten Quellcode, um ein Fenster mit Knopf unter
Windoofs darzustellen, begeistern konnten (wie bei TP für Windows), hat
Borland eine recht gelungene objektorientierte Schnittstelle (VCL =
Visual Component Library) dazugepackt und das Ganze in Delphi
umgetauft.

Und für Deine spezielle Vorliebe :-P haben sie auch etwas
hineingepackt: Man kann damit immer noch Konsolenanwendungen mit
niedrigem Speicherplatzbedarf erstellen.

@Armin:
Da ich die gekaufte Vollversion benutze, kann ich Dir nicht mit Details
dienen, aber es war eigentlich immer so, dass man die Personal-Version
herunterladen und anschließend registrieren mußte (ist trotzdem
kostenlos!). Von den Enterprise/Architect-Versionen gab es immer 90
Tage Trials, aber die willst Du für Hobbyanwendungen nicht haben und
erst recht nicht bezahlen. ;-)

Gruß, Frank

Autor: BernhardT (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei dem Buch 3D-Programmierung mit Delphi für Kids gibt es unter anderem
auch eine Vollversion Delphi 3 Professional, und noch einige andere SW.
Für 25 Euro eigentlich auch nicht schlecht.  Ich hasse
Windowsprogrammierung und nutze Delphi auch nur genau wie du das vor
hast. Delphi 3 reicht dafür aus  3 Professional  hat  sogar noch
Datenbank Unterstützung etc.

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Frank: So langsam verabschiede auch ich mich von der Konsole.
Hauptgrund für mein Festhalten an Qbasic war, daß ich ums verrecken mit
dem objektorientierten nichts anfangen kann - ich bin halt nunmal
prozedural aufgewachsen, Assembler ist meine Hauptsprache. VB ist mir
viel zu aufgeblasen und umständlich.

@Rainer:
Schade, daß die "professionellen" Programmierer es nicht in Betracht
ziehen, auch professionelle Entwicklungstools zu verwenden.
Purebasic ist kein Basic, wie man es vom C-64 kennt. Ich würde es
zwischen VC und VB ansiedeln, VB hat lediglich einen komfortableren
Editor, der einem alles vorkaut (nicht unbedingt schlecht, aber auch
nicht immer gut). Man muß auch bedenken, daß die Programmgröße bei
größeren Anwendungen weiter auseinanderklaffen dürfte. Ich habe
beispielsweise eine Windows-Anwendung für die serielle Schnittstelle
geschrieben, die es erlaubt, verschiedene Kommandos (in Hex) zu senden,
die COM auszuwählen etc. Fertig kompiliert 15KB - und kein Runtime
dll erforderlich. Und es ist Pfeilschnell.
Warum alle so auf C abfahren ist und bleibt das größte Rätsel des 20.
Jahrhunderts (42?). Aber VHS war ja auch das schlechteste System und
hat sich durchgesetzt.

Ein jeder soll sich das heraussuchen, mit dem er am Besten
zurechtkommt.

Autor: emax (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Warum alle so auf C abfahren ist und bleibt das größte Rätsel des 20.
Jahrhunderts "

Umpfffh!

Ich würde Dich verstehen, wenn Du das über C++ geschrieben hättest. Ich
arbeite zwar (notgedrungen) auch mit C++, und finde, dass es
unbestreitbare Vorteile hat. Ich denke aber, dass ich mit allen
Projekten, die nicht wesentlich über 10-20Tausend LOC liegen, in C
DEUTLICH produktiver UND fehlerfreier arbeite.

Überdies habe ich in C den denkbar geringsten Overhead, und kann voll
HLL orientiert abstrahieren, oder aber auch noch unter den Leiterbahnen
meines Mortherboards rumprogrammieren, wenn es denn unbedingt sein
muss.

Irgendwann, vor vielen Jahren, da fiel bei mir der Groschen in Sachen
"C" (es war WIRKLICH ein Schlüsselerlebnis, ich erinnere mich noch
genau daran), und seit dem fahr ich auf "C" ab. Ich könnte mich in C
sogar mit meinen Mitmenschen unterhalten, weil in C eben einfach alles
geht.

Ich nehme deshalb einfach mal wohlwollend an, dass Du vielleicht MS
VC++ oder ähnlichen Müll gemeint hast. Aber gcc, das kannste nicht
wirklich meinen, oder?

e.

Autor: BernhardT (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@emax  ich glaube die eigentliche Frage ging ja mal darum, mit wenig
Aufwand eine Windoofschnittstelle über RS232 zum uC zu basteln.

Es gibt ne Menge Leute (Nixprofis) die den PC als Werkzeug nutzen
wollen und es gibt sehr wenig geeignete Programmiersprachen die dazu
passen. Unter DOS hab ich sowas ähnliches für kleine Tests auch gerne
mal schnell mit Basic gelöst. Unter Window habe ich bis heute nichts
ähnlich einfaches gefunden. Dieses Purebasic stürtzt bei mir sehr gerne
ab (ich schau mir das jetzt aber noch mal genauer an). Ich nutze
Delphi, weil es eben vieles durch zusammenklicken machbar ist und ich
allerdings auch den Vorteil habe, das ich eine Zeitlang sehr gerne
Pascal (DOS) programmiert habe. C ohne ++ geht ja unter Windoof wohl
kaum. Ich wundere mich allerdings auch etwas über thkais das er so eine
C Allergie hat. Gerade bei uC finde ich C (GCC) super weil sehr
Hardwarenah, prozedural einsetzbar, und trotzdem Hochsprache (kann man
Formeln meist beinahe so eingeben wie sie im Mathebuch stehen). Ich hab
keine Lust auf für jeden neuen uC nen neue Sprache-
Gruß Bernhard

Autor: emax (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@bernhardt

Ich bin voll d'accord mit Dir, die Probleme, "mal eben ein
Prograemmchen" unter Windows zu machen, ohne den Ozeandampfer Visual
Studio gleich anzuwerfen, die kenn ich gut. Eben deshalb habe die
Plattform gewechselt, ich nutze nun gentoo.Linux für (fast) alles, und
bin seit dem glücklich und virenfrei. Für kleinere sachen gibt es da
die Script-Basierten Sprachen, es gibt natürlich C und wenn mans ganz
dicke will, dann eben auch die kdevelop.

Ausserdem finde ich, dass jeder in der Sparche arbeiten soll, die er am
besten kann, ob Basic oder Smalltalk, jdeder nach seiner Fasson.

Aber diesen Satz "Warum alle so auf C abfahren ist und bleibt das
größte Rätsel des 20.Jahrhunderts "

den konnte ich einfach nicht unkommentiert stehen lassen.

e.

Autor: Ingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ thkais,

Du schreibst, das Du Dir in einer halben Stunde eine RS232... zusammen
geklickt hast. Ich habe mir die DEMO runtergeladen und bin schlicht
begeistert.
Mit der RS232 habe ich aber noch so meine Schwirigkeiten. Auf der HP
von purebasic heist es RS232 wird unterstützt, aber nicht direkt.
Kannst Du noch mal ein paar Worte dazu posten wie es denn nun geht mit
der RS232!?!

DANKE im Voraus
Ingo

Autor: Dieter B (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Ingo

Schau doch mal unter

http://www.purearea.net/pb/german/index.htm

unter User-lib gibt es eine LIB Namens MVCOM

Vielleicht hilft es ja.

MFG

Dieter

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jep, man braucht die MVCOM (ist mehr als 4 Wochen her, die Halbwertszeit
meines Erinnerungsvermögens liegt bei ca. 3 Tagen - sorry, bin auch
schon über 30). Ich möchte nicht verschweigen, daß man schon einige
Stunden Zeit zur Einarbeitung benötigt - aber die meiste Zeit
verbrachte ich mit Suchen nach Codebeispielen, um mich einzuarbeiten.
Inzwischen gehts unglaublich flott. Eine andere Möglichkeit besteht
darin, direkte API-Aufrufe zu verwenden - ein wenig abstrakter, aber es
geht auch. Vor nicht ganz 6 Wochen habe ich ausschließlich im
DOS-Fensterchen Programme geschrieben. Im Purebasic-Forum fand ich mit
dem Begriff "mvcom" auch eine riesige Bibliothek mit mehr oder minder
nützlichen Erweiterungen. Falls Du nicht weiterkommst, kannst Du Dich
per Mail bei mir melden (Adresse s. http://www.ft-fanpage.de). Der
größte Knackpunkt, den man erst mal verstehen muß, ist die völlig
andere Struktur von Programmen, die unter Windows laufen (im Vergleich
zur DOS-Konsole). Aber wenn da einmal der Knoten geplatzt ist, gehts
ganz gut.

Meine Programme für µC sind recht klein (ca. 0,5 - 16K Code) und ich
meide Float wie die Pest, deshalb besteht für mich kein Bedarf an C.
Fast alles läßt sich notfalls auch mit Festkomma-Arithmetik erledigen -
zumindest in meinen Anwendungen. Ich habe nunmal gerne alle Zügel in
der Hand, d.h. ich möchte schon gerne wissen, wo meine Variablen im
Speicher stehen (jaaa, ich weiß, man kanns in C auch definieren - aber
wozu dann C? ) C ist m.E. auch nicht besser als Assembler - vielleicht
ein wenig bequemer. Mathematische Formeln sind da ein gutes Beispiel,
zugegeben. Aber C hat seine Tücken, z.B. muß man mit Arrays höllisch
aufpassen, denn es wird keine Bereichsprüfung vorgenommen. Einen String
kennt C nicht, ich muß es genauso machen, wie in Assembler: Als Pointer
auf einen Speicherbereich. Pointer sind auch so eine Sache, vergisst
man die Initialisierung, krachts. Bei Speicherzuweisungen (malloc())
kommt man unter Umständen in Teufels Küche. Alles Fehlerquellen, die
gerade als Anfänger Probleme bereiten, und man sitzt dann grübelnd vor
dem Code und fragt sich, wo man das Semikolon vergessen und wo man
eines zuviel hat. Ich habe vor kurzem von einem Bekannten einen sehr
schönen Link bekommen, der mir aus der Seele spricht -

http://www.kuro5hin.org/story/2004/2/7/144019/8872

Vor allem der Abschnitt über "Portabilität" ist sehr aufschlußreich
g
Aber wir sollten nicht in ein völlig anderes Thema abgleiten. Halte es
jeder so, wie er will.

Autor: emax (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hab mir den Anti-C link mal angesehen. Ganz lustig.

Das steht z.B.:

"it only has three types of variable; everything is either a number, a
bigger number, a pointer or a combination of those three. "

Exakt. So einfach ist C!

Es ist pur. Es ist fundamental.

Und deshalb ist es so erfolgreich.

:-))


Grinsegruesse

e.

Autor: emax (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber zur allgemeinen Erheiterung und zur ultimativen Resignation in
Sachen "C" kann ich Euch da noch was Feines empfehlen: den
"International Obfuscated C Contest" (iocc), der jedes Jahr
stattfindet, ich freu mich schon immer auf die Ergebnisse. Ein paar
Ergebnisse des Jahres 2003 sind hier auf der Deutschen Seite zu finden,

schaut euch dort zum Beispiel mal "ctk.c" an, oder schaut Euch mal
die "herrmann" - Sachen an, köstlich, einfach köstlich!

Und alles sind lauffähige Programme...:

http://www.de.ioccc.org/years.html#2003

Oder hier eins aus meiner Sammlung, ebenfalls ein Programm mit
Funktion, und einem auch wirklich ganz erstaunlichem Ergebnis:

---------------START--------------
int
a[1817];main(z,p,q,r){for(p=80;q+p-80;p-=2*a[p])for(z=9;z--;)q=3&(r=time 
(0)
+r*57)/7,q=q?q-1?q-2?1-p%79?-1:0:p%79-77?1:0:p<1659?79:0:p>158?-79:0,q?! 
a[p+q*2
]?a[p+=a[p+=q]=q]=q:0:0;for(;q++-1817;)printf(q%79?"%c":"%c\n","
#"[!a[q-1]]);}
---------------ENDE---------------

Nein, versprochen,. es macht nichts am Rechner kaputt, und schiesst
auch keine Jobs ab. Einfach mal kompilieren, und laufen lassen...


C  i s t   W U N D E R V O L L .....

:-)))

e.

Autor: Ingo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ thkais, Dieter

Danke euch beiden für die Info, bin dem Link gefolgt, dass es ein
Volltreffer war brauche ich nicht zu sagen.
VIELEN DANK DAFÜR!!!!!!!!!!!!!!

Zur Diskussion ob nun C, Assmbler, Pascal, oder Basic oder, oder......

Ich denke das hängt von jedem Porgrammierer (und auch dessen
Geldbeutel) und nicht zu letzt von dem Ziel ab das man zu erreichen
sucht! C ist eine der mächtigsten Sprachen die z.Zt. gefahren werden,
wohl gefolgt von Delphi usw. Wenn man in C zu Hause ist und jeden Tag
damit umgeht dann ist C die beste Wahl. Aber was wenn man mal eben ein
Progrämmchen unter Windows oder Unix braucht um einem µC auf die Finger
zu sehen!?!?!? Dann ist C zu umfangreich!!
Ich versuche es mal in einem Bild auszudrücken:
Warum soll ich einen Spezial-Führerschein für einen Schwerlast-LKW
machen, wenn mich der PKW Führerschein ans Ziel bringt!?!?!

In diesem Sinne vielen Dank noch mal sagt

I N G O

Autor: thkais (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einen letzten Kommentar noch, dann hör ich mit dem OT auf...
@emax: Und nun sag mir, was kann noch purer sein, als Assembler ?

Assembler rules.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

purer als Assembler ist es nur noch die Maschinencodes direkt in HEX
oder Binär in das Flash zu stopfen. In der Berufsschule hab ich das mal
für die wichtigsten Befehle des 8051ers gekonnt. Auch die Berechnung
von relativen Sprüngen ging aus dem Kopf. Heute erinnere ich mich nur
noch an die Bedeutung von 0x00, 0x02 und 0x12

;-)

Matthias

Autor: emax (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Purer als Assembler?

Programme löten.

=:-)

e.

PS: das gibts (gabs) wirklich

Autor: Frankl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Fädeln zwischen Ringkernen gab es auch mal.

Autor: Jörg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das IOCCC-Beispiel würde aber heute nicht mehr durchgehen, weil es
nicht standardkonform ist. ;-)

C ist natürlich keine Programmiersprache, sondern eine mittlere
Krankheit (wie IOCCC gut beweist), aber ohne diese Krankheit würden
noch heute Heerscharen von Programmierern zehnmal so viele Bugs aus
den völlig unwartbaren in Assembler geschriebenen Betriebssystemen,
Microcontroller-Anwendungen etc. popeln, wie sie es derzeit mit C tun.

Andererseits: wenn man C einmal beherrscht, gibt's gar nicht mehr so
viele Gründe, warum man es nicht auch auf der Gegenseite des
Controllers benutzen will.  OK, ich bin verwöhnt, meine
Betriebssysteme kommen von Haus aus nach wie vor mit einem C-Compiler
(naja, fast alle, bei Solaris muß man ihn nachinstallieren).

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.