AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

-- in C & Pointer

Ein Thema von ferby · begonnen am 31. Jan 2008 · letzter Beitrag vom 2. Feb 2008
Antwort Antwort
Seite 2 von 2     12   
DMW

Registriert seit: 6. Sep 2006
Ort: Münster
269 Beiträge
 
Delphi XE Professional
 
#11

Re: -- in C & Pointer

  Alt 1. Feb 2008, 18:18
Zitat von alzaimar:
Och, C ist nicht 'besser' als Delphi, nur weiter verbreitet.
Natürlich nicht. Aber wer vergleicht denn C und Delphi?


Zitat von alzaimar:
Aber das ist eh eine Glaubensfrage und bevor wir uns duellieren, einigen wir uns auf 'Jedem das Seine' und freuen uns täglich neu über Exploits, die Dank der weiten Verbreitung und Sicherheit dieses Makro-Assemblers entdeckt werden.

Wie Du schon sagtest: In den richtigen Händen ist C eine total geil kompakte und auch sichere Sache. Leider gibt es nicht so viele 'richtige Hände'.... Das gilt aber auch für (fast) jede andere Sprache.
Eigentlich betonte ich doch "insbesondere C++". C ist für heutige Verhältnisse schon minimalistisch. Mit C++ aber kann man Dinge anstellen, von denen ich in Delphi nur träumen würde. (Natürlich hat auch Delphi seine Vorzüge. Insbesondere vermisse ich in C++ die ausführliche RTTI.)

Insofern ist es nicht Glaubens-, sondern Bedarfsfrage. Die meisten meiner Programme bestehen aus zwei getrennten Teilen: die eigentliche Implementation, die in C++, sowie das GUI, das mit der VCL in C++Builder (also gewissermaßen Delphi mit C++-Syntax) geschrieben ist. Und das ist gut so.

Buffer-Overflows und die anderen üblichen Bugs können in C++ übrigens mit ausreichender Erfahrung und den richtigen Werkzeugen (z.B. das in C++Builder enthaltene CodeGuard) genausogut umschifft oder gefunden werden wie in Delphi. Und wer die Sprache C++ richtig einsetzt (also intensiv Gebrauch von Stackobjekten, Smart-Pointers, Containern, Templates etc. macht und die direkte Benutzung von Zeigern, C-Bibliotheksfunktionen, new und delete meidet), produziert auch schon aus Prinzip keine Buffer-Overflows, Lecks oder dergleichen. Nur das berüchtigte C/C++, also eine unausgegorene Mischung aus prozeduraler, zeigerorientierter C- sowie objektorientierter C++-Programmierung, ist eine ernsthafte Gefahr.


Zitat von alzaimar:
Was ich hier blöd finde, ist die Mehrdeutigkeit (im Verständnis) eines Ausdruckes wie *p--. Ich meine, das ist die kürzeste Klausurfrage in der IT:
Zitat:
Erkläre *p--
Ja, die Operatorprioritäten sind etwas unübersichtlich. Daher habe ich auch meist eine Prioritätentabelle dabei.
Der findige Programmierer lernt diese Tabelle vor Klausuren auswendig und benutzt im realen Leben immer Klammern

Edit: Typographie
Moritz
  Mit Zitat antworten Zitat
Benutzerbild von phXql
phXql

Registriert seit: 11. Mär 2004
Ort: Mühldorf
824 Beiträge
 
#12

Re: -- in C & Pointer

  Alt 1. Feb 2008, 18:41
Zitat von Xong:
Zitat von alzaimar:
Frage: Wieso schreibst Du 2008 dein erstes C-Programm?
Vielleicht weil C an Universitäten immer noch als Beispielsprache gelehrt wird.
Und diese Sprache hatte nicht ohne Grund so viel Erfolg. Auch heute noch wird es bei der maschinennahen Entwicklung genutzt.
Ja, 1970 hat man damit noch Leute beeindrucken können... Ausser der systemnahmen Programmierung irgendwelcher Chips mit 1 KB Speicher wüsste ich nicht, wieso ich mir C antuen sollte (Ah doch: sollte ich jemals auf die Idee kommen, einen kernel zu schreiben, wirds wohl doch mit c und nich mit java/c# gemacht werden )
"Dunkel die andere Seite ist"
"Yoda! Halts Maul und iss deinen Toast!"
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#13

Re: -- in C & Pointer

  Alt 1. Feb 2008, 18:56
wie bereits erwähnt wurde wird c bei systemnaher Programmierung verwendet und hat dort auch seine Daseinsberechtigung. Wenn man einen Microcontroller mit 60 kb Arbeitsspeicher hat wovon sich das Betriebssystem auch etwas abzweigt muss man einfach auf jedes einzelne Bit achten und da ist selbst c++ schon überdimensioniert (weil einfach durch die Objecte overhead entsteht der nicht gebraucht werden kann).

Und das dieses Beispiel ein Paradebeispiel dafür ist wie gut C wirklich ist finde ich an der Stelle unpassend. Vor 1 bis 2 Tagen hatten wir hier in der dp in Delphi mal wieder das Problem das bei einer bedingten Abfrage mit and die Klammerung vergessen wurde. Und schuld das es ohne Klammern nicht lief war auch dort die Priorität der operatoren. Es hat also rein gar nichts mit der Programmiersprache c zu tun sondern einfach damit das leute die wenig/selten mit operatoren rum hantieren nicht dran denken das es dort prioritäten zu beachten gilt.


Und das c nur noch selten gebraucht wird weil die meisten Maschienen ausreichend Leistung haben um Objectoverheader ignorieren zu können halte ich für falsch.
Es ist einfach nur der erste Eindruck der meisten Leute hier im Forum die hauptsächlich mit PC's zu tun haben und somit Anwendungsentwicklung auf großen Maschienen betreiben.
Aber wenn man sich im eigenen Umfeld mal umschaut sieht man einen Drucker, eine Microwelle, einen Herd, eine Waschmaschiene, einen Boardcomputer im Auto etc. wo überall Microcontroller verwendet werden und Speicher knapp ist weil auf jeden Cent geachtet wird.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von phXql
phXql

Registriert seit: 11. Mär 2004
Ort: Mühldorf
824 Beiträge
 
#14

Re: -- in C & Pointer

  Alt 1. Feb 2008, 19:43
Manche Microwellen laufen mit Java.
Aber stimmt schon, C hat ne Daseinsberechtigung. Aber C für Anwendungsentwicklung auf PC / High-Level zu benutzen halte ich für nicht mehr zeitgemäß. Einfach zu unproduktiv.
"Dunkel die andere Seite ist"
"Yoda! Halts Maul und iss deinen Toast!"
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#15

Re: -- in C & Pointer

  Alt 1. Feb 2008, 20:37
Zitat von SirThornberry:
... Und schuld das es ohne Klammern nicht lief war auch dort die Priorität der operatoren. Es hat also rein gar nichts mit der Programmiersprache c zu tun
Äh. Doch. Natürlich hat das was mit der Programmiersprache zu tun. C lässt zu viel Murks zu, um als gute Programmiersprache im Sinne einer Fehlerrobustheit in der Syntax durchzugehen. Für die Lehre würde ich es nicht einsetzen, wohl aber für kompakten Code. Man hat einfach 100% Kontrolle, was passiert, die Compilermagic ist 0,0 und das ist teilweise gewünscht.
Zitat von SirThornberry:
sondern einfach damit das leute die wenig/selten mit operatoren rum hantieren nicht dran denken das es dort prioritäten zu beachten gilt.
Mit Delphi (z.B.) wär das aber nicht passiert.
Nä nä nä nä näää nä.

Daher ist C wirklich nicht geeignet, Anfängern das Coden beizubrigen. Das ist so, als ob man mit einem 70er Jaguar das Autofahren lernt. Ohne Ausbildung als Mechaniker läuft da gar nix. Aber schick ist so ein Teil schon. Wenn's fährt...
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#16

Re: -- in C & Pointer

  Alt 1. Feb 2008, 23:55
Zitat von phXql:
Manche Microwellen laufen mit Java.
Aber stimmt schon, C hat ne Daseinsberechtigung. Aber C für Anwendungsentwicklung auf PC / High-Level zu benutzen halte ich für nicht mehr zeitgemäß. Einfach zu unproduktiv.
es gibt aber schon noch ein paar programme, welche in C geschrieben wurden, z.b. UNIX, Windows, Oracle DB, EXCEL, WinWord, SAP R/3, etc.

also ganz ausgestorben ist die sprache mit den 16 befehlen noch nicht...
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#17

Re: -- in C & Pointer

  Alt 2. Feb 2008, 01:23
Moin Grenzgaenger,

also WinWord und Excel (2003 und 2007) wurden mit MS Visual C++ 7.0 erstellt...
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#18

Re: -- in C & Pointer

  Alt 2. Feb 2008, 07:07
Zitat von Christian Seehase:
Moin Grenzgaenger,

also WinWord und Excel (2003 und 2007) wurden mit MS Visual C++ 7.0 erstellt...
ist doch C, mit dem compiler aus dem hause micorosoft... das spart lizenzkosten

aber auch ich vermute, dass das eine oder andere C++ feature einfloss. der code selbst basiert auf C. aber C und C++ nennt man ja zwischenzeitlich in einem atemzug C/C++, da es ja zwischenzeitlich kaum mehr einen reinen C compiler mehr gibt.

grüsse und noch einen schönen samstag
GG
  Mit Zitat antworten Zitat
Benutzerbild von phXql
phXql

Registriert seit: 11. Mär 2004
Ort: Mühldorf
824 Beiträge
 
#19

Re: -- in C & Pointer

  Alt 2. Feb 2008, 11:03
Naja, zwischen C und C++ is doch noch der Unterschied OOP. Ich mag C++ auch nicht wirklich, aber es is zumindest produktiver einzusetzen als C.
"Dunkel die andere Seite ist"
"Yoda! Halts Maul und iss deinen Toast!"
  Mit Zitat antworten Zitat
Benutzerbild von cware
cware

Registriert seit: 15. Feb 2007
Ort: Mannheim
38 Beiträge
 
Delphi 7 Enterprise
 
#20

Re: -- in C & Pointer

  Alt 2. Feb 2008, 20:53
Zitat von grenzgaenger:
es gibt aber schon noch ein paar programme, welche in C geschrieben wurden, z.b. UNIX [...]
wäre merkwürdig, wenn UNIX nicht in C geschrieben wäre... immerhin ist der Ursprung der Sprache die, um das System nicht mehr vollständig in ASM vorliegen zu haben...


cheers...
> Why is 6 afraid of 7?
< Because 7 8 9!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz