Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 03:28

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



DllMain wird nicht ausgeführt

Discussion on DllMain wird nicht ausgeführt within the C/C++ forum part of the Coders Den category.

Reply
 
Old 04/30/2012, 17:02   #31


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
Quote:
Originally Posted by xNopex View Post
Das return würde wegen der Endlosschleife eh vom Compiler wegoptimiert werden. Mir gehts eher darum, dass in deiner Argumentation keine klare Linie zu erkennen ist. Auf der einen Seite argumentierst du, dass void main in C++ schlechter Stil sei bzw. nach dem Standard ungültig ist. Auf der anderen Seite sagst du, es ist völlig legitim bei Microcontrollern o.ä. in C++ int main zu verwenden, obwohl das aus der Sicht eines Systems ohne OS völliger Schwachsinn ist und undefiniert ist! Es macht einfach keinen Sinn, so wie void main wenig Sinn für Plattformen mit OS macht. Dass beides mehr oder weniger funktioniert steht außer Frage. Ich sehe aber keine logische Konsequenz, dass du das eine für völlig oke hälst, wohingegen das Andere für dich ein No-go ist.
Dann hast du es nicht so mit der Logik.

Das eine ist einfach nur unter Umständen unnötig und deshalb in den Augen von C Opas oder in deinen unschön/schlechter Stil

Zitier mich, wo ich void main als unschön bezeichne. Es ist falsch, Punkt aus Ende.
Deshalb sehe ich es als NoGo. Klar, indirekt könnte man sagen, es ist unschön, weil ja auch standardkonformes Programmieren nur ein Leitsatz für guten Stil ist, aber dann kann man sowieso jeglichen Syntaxfehler nur als unschön bezeichnen, weil man könnte ja einfach einen Compiler schreiben, der den Standard nicht so ganz eng sieht.

Gäbe es für Microcontroller eine Regelung, dass hier void main gestattet ist, würde ich es auch nicht so verurteilen. Und nein, das ist für mich kein Grund, C vorzuziehen.

Quote:
Es hängt doch von der Plattform ab. void main ist anscheinend unter C++ "falsch". Daran erkennt man doch auch, dass bei der Entwickklung der Sprache das primäre Ziel Plattformen mit einem OS waren. Es ist schlicht falsch und undefiniert auf einer Plattform ohne OS irgendetwas an irgendjemanden zurückzugeben. An wen denn?
Undefiniert? Nein. Schlimmsten Falls wird er ignoriert, es passiert also nichts (ist nop für dich auch undefiniert?), wie eine Zuweisung an sich selbst oder der Aufruf einer Funktion mit Rückgabetyp ungleich void, deren Rückgabewert man aber nicht speichert.
Falsch ist es erst recht nicht.
Außerdem muss man nicht zwingend OS Anwendungen schreiben, sondern auch Funktionen mit einem anderen Einstiegspunkt. Der C++ Standard schreibt nur vor, dass man über die Main den Status des eigenen Programms zurückgeben kann (was eigentlich jedes System, nicht nur ein OS, verwerten sollte). 0 steht allgemeinhin für den erfolgreichen Ablauf und wenn dem Chip das egal ist, dann ist es ihm halt egal, deshalb ist es kein Grund, C++ nicht dafür zu verwenden.
Man hielt eine feste Regel int wohl einfach für sinnvoller, das macht C++ nicht ungeeigneter für Microcontroller.

Quote:
stimme xNopex zu, verschiedene programmiersprachen sind für unterschiedliche dinge gut, C++ ist nicht (perfekt) dazu ausgelegt ein betriebssystem zu programmieren, torvalds hat dazu glaub ich auch schonmal gesagt, dass C++ für betriebssystemprogrammierung ungeeignet ist, wofür er heftig kritisiert wurde (von leuten die kein os geschrieben haben ).
Komische Sache, man kann also ein OS damit entwickeln, obwohl es doch nur für Anwendungen, die auf einem OS laufen, geeignet sein soll, weil dem BIOS der return Wert der main auch völlig egal ist?
Dat Logik.

Man kann ein OS in C++ wunderbar entwickeln und es ist dafür nicht schlechter geeignet als C und ja, ich habe es auch schon getan (natürlich nicht im großen Maßstab).
Außerdem hat C++ genau wie C und alle anderen nicht nur ein einziges Anwendungsgebiet (OS Programmierung, lol. Macht man ja so oft), sondern mehrere und das ist für C++ genau so wie für C unter anderem auch Microcontrollerprogrammierung.
Ob es diese nostalgischen C Opas nun einsehen wollen oder nicht.

Nicht umsonst fokusiert sich Microsoft immer mehr auf OOP als auf C.


Ich denke damit hats sich, klarer kann man sich nicht mehr ausdrücken und das ganze wird mir nun zu ot.
Ich werde bei Zeit nochmal eine seperate Diskussion dazu aufmachen, weil mir dieses engstirnige Anti-C++-Für-Hardware Denken langsam auf den Sack geht.
MrSm!th is offline  
Reply


Similar Threads Similar Threads
Screencapture wird schon beim start ausgeführt.
11/13/2011 - AutoIt - 3 Replies
Wie der Titel schon sagt macht mein momentanes Script schon ein Screenshot wenn ich es öffne, das soll aber so nicht sein. 1. Screenshot bei klicken auf Button 2. Screenshot bei drücken von F12 ( auch hidden ? ) 3. Oben nur ein Minimieren Knopf, im moment ist dort garnichts Script #include <WindowsConstants.au3> #include <ScreenCapture.au3> GUICreate ( "Premaiders Desktop Tool",310,270,-1,-1,$WS_CAPTION)
Der Audiodienst wird nicht ausgeführt
04/10/2011 - Technical Support - 19 Replies
Bei PC Tools Internet Security kam gerade eine Meldung, dass ein glaub verdächtiger Prozess läuft. Ich hab dann auf Quarantäne geklickt. Und plötzlich war mein Ton weg Oo ; und auch das rote Kreu über dem Lautsprecher (s.Bild). Habe Doppelklick draufgeklickt auf den Lautsprecher und dann kam das. (s.Bild) Ich dachte mir dann so, wenn ich es wieder aus der Quarantäne entferne geht es wieder und das rote Kreuz geht weg, aber nachdem ich es bei PC Tools Internet Security aus der Q....
Make.sh kann nicht ausgeführt werden!
03/07/2011 - Metin2 Private Server - 9 Replies
Hallo Da ich nichts zu diesem Thema nichts gefunden haben frag ich jetzt mal hier. Wenn ich neue Quests einfüge und Make.sh ausführen will klappt alles bis zum ersten Schritt. cd /usr/rain/channel/share_data/locale/english und wenn ich dannach chmod u+x make.sh
wie kann ich eine exe in ein jpg verstecken und das durch kliken ausgeführt wird
05/06/2010 - General Coding - 7 Replies
wie kann ich eine exe in ein jpg verstecken und das durch kliken ausgeführt wird
wie kann ich eine exe in ein jpg verstecken und das durch kliken ausgeführt wird
04/26/2010 - Main - 7 Replies
wie kann ich eine exe in ein jpg verstecken und das durch kliken ausgeführt wird.



All times are GMT +1. The time now is 03:29.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.