Movatterモバイル変換


[0]ホーム

URL:


Zum Inhalt springen
WikipediaDie freie Enzyklopädie
Suche

QuickC

aus Wikipedia, der freien Enzyklopädie
QuickC


Hallo-Welt-Programm undCompiler-Einstellungen von QuickC 2.51
Basisdaten

EntwicklerMicrosoft
Erscheinungsjahr1987[1]
Aktuelle Version2.51
(1990)
BetriebssystemMS-DOS
Programmier­spracheC
KategorieCompiler,IDE
LizenzMS-EULA

MicrosoftQuickC ist einCompiler und einezeichenorientierteEntwicklungsumgebung für dieProgrammierspracheC unterMS-DOS. Später folgte auch eine Version mitgrafischer Benutzeroberfläche für das BetriebssystemWindows. Es ist in allen Versionen möglich, zwischen reinemANSI C und den Spracherweiterungen von Microsoft zu wählen. Keine Version unterstütztobjektorientierte Programmierung.[2]

Geschichte

[Bearbeiten |Quelltext bearbeiten]

QuickC 1.00(Oktober 1987)

Die erste Version setzt die damalige Version des ANSI-C-Standards um und ist grundsätzlich kompatibel mitMicrosoft C 5.0. Allerdings wird das Huge-Speichermodell nicht unterstützt.[3]

DerDebuggerCodeView unterstützt QuickC, ist aber nicht im Lieferumfang enthalten.[4] Der integrierte Source-Level-Debugger von QuickC basiert jedoch auf CodeView.[3]

Die Benutzeroberfläche ist alsSingle Document Interface (SDI) gestaltet. Es können also nicht mehrereQuelltextdateien gleichzeitig geöffnet sein bzw. bearbeitet werden.[5]

Die Version hatteKompatibilitätsprobleme mit diversenFestplattencontrollern vonWestern Digital, da beide Technologien denselbenInterruptvektor für unterschiedliche Zwecke nutzten.[6]

QuickC 1.01(März 1988)

Die Version behebt diverse Grafikfehler und die zuvor genannten Kompatibilitätsprobleme mit den Festplattencontrollern von Western Digital.[3]

QuickC 2.00(Januar 1989)[7]

Für die zweite Version von QuickC wurde die zeichenorientierte Benutzeroberfläche (TUI) der Entwicklungsumgebung komplett neu erstellt.[8] Sie ähnelt jetzt der TUI vonQuickBASIC 4.5 oder dem später erschienen Microsoft C 6.0 (Programmer’s WorkBench; PWB).[9] Wie bei diesen wird nun auch einekontextsensitive Hilfe angeboten. Befindet sich derCursor innerhalb einesSchlüsselwortes oder einesBezeichners einer bekanntenFunktion,Konstanten oderCompiler-Anweisung, kann man durch Drücken derF1-Taste oder einemRechtsklick die Dokumentation für das jeweilige Sprachelement anzeigen lassen.[10][11]

Ab dieser Version besaß QuickC einen inkrementellen Compiler.[9][12] Bei Änderungen in einzelnen Dateien muss also nicht das komplette Projekt neu kompiliert werden, sondern nur die Teile, welche von den Änderungen direkt betroffen sind. Allerdings ist es nicht möglich, CodeView zusammen mit dieser Einstellung zu verwenden.[13]

Ähnlich wie beiBGI fürTurbo C/C++ werden neben Zeichenfunktionen fürgrafische Primitiven auch zusätzliche Funktionen zurVisualisierung vonstatistischen Daten bereitgestellt.[12] Dazu zählenStreu-,Linien-,Balken- undKreisdiagramme.[14]

Wie bei Microsoft C werden ab der zweiten VersionInline-Assemblerfragmente unterstützt.[9][12] Zudem werden alle Speichermodelle imReal Mode vonx86-Prozessoren unterstützt.[9] Bei den beiden Versionen zuvor war das Tiny-Modell nicht verfügbar.[8] Dieses ist u. a. notwendig zur Erstellung vonCOM-Dateien.[15]

Die erstellten Programme sind kompatibel mit Microsoft C 5.1.[16] Die Make-Dateien für denErstellungsprozess sind aufgrund der Umstellung vonMAKE aufNMAKE jedoch nicht auf Anhieb kompatibel mit denen von früheren Versionen.[17]

QuickC 2.01(Juni 1989)

Identisch mit Version 2.00. Bei dieser Version wurde QuickC lediglich zusammen mitQuickAssembler vertrieben.[18]

QuickC 2.50(Mai 1990)

Programme sind kompatibel mit Microsoft C 6.0.[19]Variablen vom Typlong double werden nun in der für den80x87Co-Prozessor typischen Form von 10-Byte (80-Bit) gespeichert, vorher war das noch in 64-Bit.[20]

QuickC 2.51(Dezember 1990)

Identisch mit Version 2.50. Bei dieser Version wurde QuickC lediglich zusammen mit QuickAssembler vertrieben.[18]

QuickC for Windows

[Bearbeiten |Quelltext bearbeiten]
QuickC for Windows
Basisdaten

EntwicklerMicrosoft
Erscheinungsjahr1991[1]
Aktuelle Version1.00
(1991)
BetriebssystemMicrosoft Windows
Programmier­spracheC
KategorieCompiler,IDE
LizenzMS-EULA

Im September 1991 veröffentlichte Microsoft eineintegrierte Entwicklungsumgebung für QuickC mit einergrafischen Benutzeroberfläche (GUI), die fürWindows 3.x (16-Bit) ausgelegt war.[21] Die Standard-Edition vonVisual C++ 1.0 basiert weitestgehend auf QuickC for Windows.[22][23]

Funktionen

[Bearbeiten |Quelltext bearbeiten]

Die Entwicklungsumgebung von QuickC for Windows besitzt folgende Eigenschaften bzw. bietet folgende Funktionen an:[21][24][25]

  • Das Hauptprogramm besitzt eineMDI-Oberfläche. Es können also mehrere Dokumente gleichzeitig bearbeitet werden.
  • Der Quelltext-Editor unterstütztSyntaxhervorhebung.
  • Es wird ein integrierter Source-Level-Debugger angeboten, der jedoch nur rudimentäre Funktionen, wie beispielsweiseHaltepunkte und das Überwachen einzelner Variablen, unterstützt.Maschinencode kann nicht angezeigt werden und es ist auch nicht möglich, Fragmente, die in einer anderen Programmiersprache erstellt wurden, zu analysieren.
  • Code aus Microsoft C 6.0 ist grundsätzlich lauffähig unter QuickC for Windows. Allerdings werden nur die Speichermodelle Small, Compact, Medium und Large durch die Entwicklungsumgebung angeboten. Das Tiny-Modell wird nicht über die Oberfläche bereitgestellt.
  • Anwendungen, die für Windows ausgelegt sind, könnenDynamic Data Exchange (DDE) nutzen.
  • Microsoft QuickC for Windows 1.0 ist etwa 52 % langsamer alsBorlandTurbo C++ for Windows 3.1.

Projekttypen

[Bearbeiten |Quelltext bearbeiten]

Es werden vier Projekttypen unterstützt. Die erstellten Programme sind grundsätzlich für denProtected Mode ausgelegt. Es können aber auch DOS-Programme im Real Mode erzeugt werden.

Windows EXE

Eine 16-Bit-Anwendung für Windows. Je nachdem, ob ein Hauptfenster erzeugt wird oder nicht, kann es sich dabei entweder um eineKonsolenanwendung oder um ein Programm mit grafischer Benutzeroberfläche handeln.

QuickWin EXE

Ein automatisch generiertes Grundgerüst für eine 16-Bit-Windows-Anwendung mit grafischer Benutzeroberfläche. Auf dieser befindet sich ein mehrzeiliges Ein- und Ausgabefeld, das dieStandard-Datenströme abbildet. Der Projekttyp ist für Testanwendungen geeignet, aber auch, um alte Programme aus Microsoft C 6.0 und früher unter Windows lauffähig zu machen und mit einer rudimentären grafischen Benutzeroberfläche auszustatten.[24] Klassische Programme für MS-DOS erforderten unter Windows 3.x noch einen Wechsel in den DOS-Modus, was mit diesem Projekttyp umgangen werden konnte.

Windows DLL

Eine 16-Bit-Dynamic Link Library (DLL) für Windows.

DOS EXE

Eine Konsolenanwendung für MS-DOS.

Optionale Werkzeuge

[Bearbeiten |Quelltext bearbeiten]

Ähnlich, wie bei allen späteren Entwicklungsumgebungen für C/C++ von Microsoft, werdenEditoren fürRessourcen bereitgestellt.[21] Diese liegen als eigenständige Applikationen vor, können aber auch aus der IDE heraus gestartet werden.[25]

Microsoft Dialog Editor

EinWYSIWYG-Editor zur Gestaltung vonDialogfenstern, die in einer Ressourcendatei abgelegt werden können. Neben den Standard-Steuerelementen von Windows (Textfelder,Schaltflächen,Kontrollkästchen etc.), können auch benutzerdefinierte Steuerelemente eingefügt werden. Diese müssen selbst gezeichnet und dieEreignisbehandlung und dieGeschäftslogik generell selbstimplementiert werden.Vererbung von bestehenden Steuerelementen funktioniert nicht, da dieses Konzept nicht durch die Programmiersprache umgesetzt werden kann.[2]

Microsoft Image Editor

Ein Editor fürRastergrafiken (Bitmaps,Mauszeiger undIcons), die ebenfalls in einer Ressourcendatei abgelegt werden können. Der Editor ähnelt der damaligen Version vonMicrosoft Paintbrush.

Caseworks QuickCase:W

DasCASE-WerkzeugQuickCase:W ermöglicht die Generierung von Quelltext für die grafische Benutzeroberfläche.[24][26] Es handelt sich dabei um eine abgespeckte Version der SoftwareCase:W der Firma Caseworks Inc.[27]

Beispiel

[Bearbeiten |Quelltext bearbeiten]

Das folgendeHallo-Welt-Programm zeigt eineMessagebox mit dem Text „Hallo Welt!“ an. Unter QuickC for Windows ist es zwingend erforderlich, dass dieHauptfunktion diePascal-Aufrufkonvention nutzt.[28]

#include<windows.h>intPASCALWinMain(HANDLEhInstance,HANDLEhPrevInstance,LPSTRlpCmdLine,intnCmdShow){returnMessageBox(NULL,"Hallo Welt!","Wikipedia",MB_ICONINFORMATION);}

Literatur

[Bearbeiten |Quelltext bearbeiten]

Einzelnachweise

[Bearbeiten |Quelltext bearbeiten]
  1. abMicrosoft (Hrsg.):Microsoft QuickC for Windows: Graphical Development Environment. C for Windows. 1991, Dokument Nr.: SY21048-0791,S. XXV (englisch). 
  2. abSascha Siebers:QuickC für Windows ganz einfach. Sybex, Düsseldorf 1992,ISBN 3-88745-190-2,S. 18 f., 69 f., 74–78. 
  3. abcMike Todd:Microsoft QuickC Battles for a Better C Benefit Novice and Professional Alike. In:InfoWorld.Band 10,Nr. 21. Popular Computing, 23. Mai 1988,ISSN 0199-6649,S. 67 f. (englisch,eingeschränkte Vorschau in der Google-Buchsuche). 
  4. Edward Warner:User Group Greets Microsoft’s New C Products With Enthusiasm. In:InfoWorld.Band 9,Nr. 23. Popular Computing, 8. Juni 1987,ISSN 0199-6649,S. 73 (englisch,eingeschränkte Vorschau in der Google-Buchsuche):“Codeview […] works with QuickC but does not come with the program […].” 
  5. Rudyard Merriam:Turbo C++ for DOS | Microsoft QuickC for DOS. In:PC Magazine.Band 11,Nr. 13.Ziff Davis, Juli 1992,ISSN 0888-8507,S. 406–409 (englisch,eingeschränkte Vorschau in der Google-Buchsuche). 
  6. Jeff Angus:Microsoft Scrambles to Patch QuickC Bugs. In:InfoWorld.Band 9,Nr. 49. Popular Computing, 7. Dezember 1987,ISSN 0199-6649,S. 3 (englisch,eingeschränkte Vorschau in der Google-Buchsuche). 
  7. QuickC 2.0 Shows Off New Interface, Adds Memory Models, In-Line Assembler, PC Mag 30. Mai 1989 S. 36
  8. abScott Robert Ladd:Great C Comparison Of 1989. In:Micro Cornucopia.Nr. 46, März 1989,ISSN 0747-587X,S. 45 (englisch,bitsavers.org [PDF;10,9 MB; abgerufen am 8. Juli 2024]). 
  9. abcdStuart J. Johnston:Microsoft Offers QuickC Upgrade. In:InfoWorld.Band 11,Nr. 3. Popular Computing, 16. Januar 1989,ISSN 0199-6649,S. 15 (englisch,eingeschränkte Vorschau in der Google-Buchsuche). 
  10. Using the Keyboard. In:Microsoft QuickC 2.51 Hilfe (QCENV.HLP). 1990 (englisch). 
  11. Using the Mouse. In:Microsoft QuickC 2.51 Hilfe (QCENV.HLP). 1990 (englisch). 
  12. abcQ38032: Differences among QuickC Versions 2.00, 1.00, and 1.01. In: msarchive.pcjs.org. Microsoft, 23. Januar 1991, abgerufen am 2. Juli 2024 (englisch). 
  13. Q38951: QuickC Version 2.00 Supports CodeView Information. In: msarchive.pcjs.org. Microsoft, 31. Oktober 1989, abgerufen am 30. Juni 2024 (englisch): „The current CodeView release is unable to understand Incrementally compiled/linked executables. If you try to use CodeView on an EXE file that was Incrementally compiled and/or linked, you will be unable to trace through the code.“ 
  14. Chart Type Constants. In:Microsoft QuickC 2.51 Hilfe (GRAPHICS.HLP). 1990 (englisch). 
  15. Raymond Chen: A look back at memory models in 16-bit MS-DOS. In: devblogs.microsoft.com. Microsoft, 28. Juli 2020, abgerufen am 26. März 2024 (englisch). 
  16. Richard Relph:Six C Compilers. In:InfoWorld.Band 11,Nr. 21. Popular Computing, 22. Mai 1989,ISSN 0199-6649,S. 47–60 (englisch,eingeschränkte Vorschau in der Google-Buchsuche). 
  17. Q37494: Differences in MAKE Files among QuickC 1.00, 1.01, and 2.00. In: msarchive.pcjs.org. Microsoft, 20. Januar 1989, abgerufen am 2. Juli 2024 (englisch). 
  18. abQ66288: „QuickC with QuickAssembler“ is 2.51, „QuickC“ alone is 2.50. In: msarchive.pcjs.org. Microsoft, 24. Oktober 1990, abgerufen am 30. Juni 2024 (englisch): „The only difference between QuickC 2.50 and 2.51 is the addition of a QuickAssembler, to create and assemble stand-alone assembly programs. The QuickC portion of the 2.51 product is exactly the same as in QuickC 2.50. (Also, the QuickC portion of the 2.01 product is exactly the same as in QuickC 2.00.)“ 
  19. The Low Cost Alternative Entry-Level C/C++ Compilers, PC Mag Juli 1992 S. 405
  20. QuickC 2.5 Up and Running. In:Microsoft Programmer’s Library 1.3. (QCUPRUN.DB). 1991, Document Number: SY10424-0290, Appendix B: QuickC Differences (englisch,pcjs.org [abgerufen am 9. August 2024]). 
  21. abcMicrosoft (Hrsg.):Microsoft QuickC for Windows: Graphical Development Environment. Development Environment Guide. 1991, Dokument Nr.: LN21046-0891,S. 3–8, 67–72 (englisch). 
  22. Kelley Damore:Visual C++ adds Windows support. In:InfoWorld.Band 15,Nr. 8. Popular Computing, 22. Februar 1993,ISSN 0199-6649,S. 17 (englisch,eingeschränkte Vorschau in der Google-Buchsuche). 
  23. QuickC for Windows: All the Pieces Minus Some Glue PC Mag 26. Nov 1991 S. 49
  24. abcDouglas Forer:C languages: oceans apart. In:InfoWorld.Band 14,Nr. 6. Popular Computing, 3. Februar 1992,ISSN 0199-6649,S. 55–68 (englisch,eingeschränkte Vorschau in der Google-Buchsuche). 
  25. abCharles Petzold:Microsoft QuickC for Windows | Turbo C++ for Windows. In:PC Magazine.Band 11,Nr. 13.Ziff Davis, Juli 1992,ISSN 0888-8507,S. 409–412 (englisch,eingeschränkte Vorschau in der Google-Buchsuche). 
  26. What Is QuickCase:W? In:QuickCase:W 1.0 Hilfe (QCASEW.HLP). 1991 (englisch):“QuickCase:W is a Windows application that lets you draw a picture of what you want your program to look like—the menu system, linked resources, and general appearance. QuickCase:W then writes the source code for you.” 
  27. Steve Gibson:Shedding light on the essence within Visual Basic and QuickC. In:InfoWorld.Band 13,Nr. 39. Popular Computing, 30. September 1991,ISSN 0199-6649,S. 27 (englisch,eingeschränkte Vorschau in der Google-Buchsuche):“QuickC’s QuickCase:W is a junior version of two other QuickC-compatible user-interface builders now being offered by Caseworks. Case:W Standard Edition […] (and) Case:W Corporate Edition […].” 
  28. WinMain function. In:Microsoft QuickC for Windows 1.00 Hilfe (QCWIN.HLP). 1991 (englisch):“The WinMain function requires the PASCAL calling convention.” 
Normdaten (Sachbegriff):GND:4202344-0 (GND Explorer,lobid,OGND,AKS) |VIAF:185530220
Abgerufen von „https://de.wikipedia.org/w/index.php?title=QuickC&oldid=250356724
Kategorien:

[8]ページ先頭

©2009-2025 Movatter.jp