Zum Inhalt springen

Crush

Mitglieder
  • Gesamte Inhalte

    2048
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von Crush

  1. Crush

    Extrem C++

    Komisch Uli ... irgendwie habe ich das Gefühl, als ob Du genau diese Frage schon einmal irgendwo gestellt hättest (vielleicht etwas anders ... aber da war doch was, oder?). Erst mal sag´ ich (auch für Scherzkeks), was ich unter diese Kürzel verstehe und was ich davon denke oder halte: Kanonische Formen sind ja in etwa definiert aber irgendwie weiß wohl keiner so recht, was man sich darunter genau vorstellen soll oder stellt sich was eigenes vor. Das ist ja ein allumfassendes Thema über ein Design, Programmentwurf, Implementation, Dokumentation alles zusammen und am besten noch alles übervollständig. Da könnte man sich doch ewig drüber auslassen, was dazu gehört und was nicht. Klassen ... bezeichne ich als Struct mit Funktionen - Im Umkehrschluß ist eine Struct eine Klasse ohne Methoden. Jedenfalls ist das von den Compiler-Produzenten so implementiert. Vererbung... es gibt so viele Formen der Vererbung, daß man da ja immer einzeln drauf eingehen müßte - alle gleichzeitig in einem sinnvollen Beispiel halte ich für ein Ding der Unmöglichkeit. Aber Beispiele von diversen Kombinationen gibt´s doch zu Hauf - und alle auf einmal ... das wäre zu viel. Chaining ist der Effekt, der durch die Referenzübergabe von Rückgabewerten auf Objektreferenzen ermöglicht wird, wodurch es möglich ist mehre Funktionen in einer "Kette" mit dem Punktoperator zu durchwandern. objekt.methode1().methode2() der Rückgabewert von Methode 2 wird das this von Methode 1. Die Rückgabewerte werden halt durchgereicht. Ein Dangling Pointer ist ein Zeiger, der auf ein Objekt gezeigt hat und dessen Objekt sich von seiner Position fortbewegt hat, wodurch er ins Nix zeigt und eigentlich ungültig sein sollte (böse Sache bei den Zeigern) - wie sollte man das sinnvoll in ein kanonisches Beispiel einsetzen?!?!? Als absichtlich eingebauter Fehler??? Ein Deep Copy Constructor ruft einfach die übergeordneten Copy-Construktors der abgeleiteten Klasse direkt auf und kopiert die eigenen members direkt ins neue Objekt. Im Zusammenhang mit Clone und Smart-Pointers könnte man da vielleicht was Brauchbares machen. Operatorüberladungen müssen eine logisch nachvollziehbare mathematische Vorgehensweise mit den Klasseninstanzen zugrunde liegen. Das bedeutet im Klartext: Input- Output- logische- und algebraische Funktionen sollten sinnvoll überladen sein, damit man sie zur verkürzten Schreibweise einsetzen kann. Nur wenige Klassenkonstruktionen erlauben das, wenn es sich nicht gerade um Mathematische Klassen oder Compilerbau handelt. Lediglich die I/O-Operatoren sind noch öfterer gut einsetzbar. UND DAS ALLES IN EINEM SINNVOLLEN BEISPIEL!!!! ABSOLUT UNMÖGLICH!!! Uli, ich glaube eh, daß Du hier einer von denen bist, der wohl mit am meisten auf dem Kasten hat und eigentlich wollte ich hier nur auf kleine Feinheiten von C++ hinweisen oder auf Besonderheiten und nicht ein riesen Beispiel aufziehen - da könnte man ja gleich ein Lehrbuch schreiben, vor allem, wenn man soviel Dinge dabei berücksichtigen will. Worum es sich bei diesen Dingen handelt weißt Du wahrscheinlich eh schon. War aber trotzdem gut. Vielleicht ist mir das mit der kanonischen Form selber noch nicht klar, was damit genau gemeint sein soll, aber das ist auch ein Grund, wieso ich mal kurz jeden Begriff angerissen habe - dann kannst Du mich ja korrigieren. Ich will also höchstens die Begriffe einzeln mal auffassen und was dazu schreiben. Aber eigentlich nur, worüber ich so beim Lesen interessantes drüberstolpere und meine, daß man das ein oder andere beim Programmieren wissen sollte oder was ich als Besonderheit betrachte, die man wenigstens mal erwähnt, damit man weiß was überhaupt unter C++ möglich ist. Dabei könnte v.a. das Chaining sicherlich ein Thema sein und man den Dangling Pointer beim Smart-Pointer anschneiden (wollte ich aber eigentlich nicht behandeln - ist doch eh klar, oder? =8-) Das war ja auch nur ein Vorschlag, weil in letzter Zeit recht wenig los ist, muß man ja nicht ... den Einsteigern ist mit sowas bestimmt auch nicht unbedingt geholfen. Für mich wäre das höchstens so als eine Art Memo im Forum ... auch um vielleicht von anderen zu hören, ob ich das selber richtig kapiert habe. Das ganze hat sich nur ergeben, weil ein Klassenkamerad von mir mich gerade in seiner neuen Firma ständig anruft und ich (ohne in den Source schauen zu dürfen) ihm seine Fehler erklären muß. C2501 hat zum Beispiel bei ihm bedeutet, daß er eine statische Klassenmethode definieren mußte ... auch etwas, worüber viele nicht bescheid wissen. War auch nur eine Schnappsidee von mir aus Langeweile ... wenn alle dagegen sind, lasse ich das natürlich lieber anstatt sie mit zu langweilen. Also: Kein kanonisches Beispiel (halte mich eh für viel zu dumm für so ein riesen Ding)! ... ich warte mal ab, was andere noch so schreiben...
  2. Crush

    Extrem C++

    Erst mal möchte ich das ganze mit einer Frage starten. Ich finde, daß hier im C++-Forum etwas wenig gepostet wird. Da ich mich gerade mit meinen Büchern etwas intensiver beschäftige und mir immer wieder ein paar Dinge auffallen, die so kaum oder gar nirgends erwähnt werden, habe ich vor, mal ein paar von den Extrem-C++-Themen, bzw. relativ wichtigen Feinheiten anzusprechen. So etwas würde ich ganz gerne mal machen um 1. den Leuten zu zeigen, was da alles noch drin ist, was man in der Schule selten, weniger oder überhaupt nicht lernt - und einfach um mal das ganze für mich selber aufzuarbeiten. Vielleicht hat ja dann der ein oder andere etwas zu dem einen oder anderen Thema zuzufügen oder auch zu korrigieren. Besteht Interesse? Wenn ja, dann werde ich in der nächsten Zeit mit der Begründung, warum man den Präfix-Operator lieber benutzen sollte als den Postfix und der Template-Metaprogrammierung starten. Vielleicht will ja dann nochmal jemand anders ein paar Themen ansprechen, welche er als "extrem" wichtig oder wissenswert ansieht - auch wenn man´s vielleicht niemals mehr im Leben braucht. Besteht interesse?
  3. Ich frage mich, warum alle so rumdiskutieren. In den Boardregeln steht´s doch glasklar für jeden: "Dieses Board ist moderiert. Die folgenden Regeln bilden die Grundlage unseres miteinanders. Bei Verstoß kann Dein Beitrag vom Moderator zensiert oder eine Sperre verhängt werden. Du hast keinen Anspruch auf vorherige Verwarnung. " Damit sollte sich das ganze doch endlich mal ausdiskutiert haben. Wer als Externer versuchen will die Boardregeln zu ändern, sollte dies mit Vorschlägen machen (aber bitte per PM und reißt nicht immer solche Threads auf wie diesen hier), die halt gnädigerweise von den Mods angenommen oder in den Gulli gekickt werden können. Vielleicht nochmal zur Erinnerung die schlimmsten Punkte, um die sich immer wieder das Thema wie dieses dreht: 1. Keine Beleidigungen gegen Forumsteilnehmer, Dritte oder Institutionen. 2. Keine Posts oder Links zu illegalen Themen (Warez, Cracks, Kopierschutzumgehung, Lizenzkeyschummeln usw.). 5. Gemäßigte Wortwahl und guten Sprachstil anwenden. Keine Fäkalsprache oder Ähnliches, auch nicht in Profilnamen, dort auch keine Provokationen. 9. Ein Anliegen nur einmal posten. Das Posten des gleichen Sachverhalts in mehreren Foren oder das erneute Posten eines Anliegens zur Erregung von Aufmerksamkeit wird nicht gern gesehen. 10. Aussagekräftige Thread-Titel wählen und das Problem möglichst genau beschreiben. 12. Ein Thread - ein Thema. Entstehen neue Themen in einem Thread, ggf. neuen Thread öffnen. Vielleicht wäre es den Leuten ja lieber, wenn es heißen würde: "... Bei Verstoß wird Dein Beitrag vom Moderator zensiert und eine Sperre verhängt. Du hast keinen Anspruch auf vorherige Verwarnung oder irgendwas sonst. Keine Diskussionen über Entscheidungen seitens der Moderatoren!!!" =) Dann hätte sich alles ein für allemal erledigt und es ist vorbei - und die Qualität des Boards würde sich unweigerlich noch mehr im Sinn von DIN-ISO 9001 ständig verbessern!!!
  4. Lustig =:-) Aber ob die Deutschen unbedingt so viel bessere Sprüche ablassen wage ich zu bezweifeln. Es macht aber immer mehr Spaß auf die anderen zu zeigen. Das hier paßt ja eigentlich ganz gut zu dem Thema: http://www.fachinformatiker-world.de/forums/showthread.php?s=&threadid=19318
  5. Vielleicht hast Du auch nicht mitbekommen, daß jetzt das C++-Forum gesplittet ist einmal rein in C++-Syntax und einmal in IDE, Compiler, MFC, usw., damit man nicht die Übersicht verliert und alles durcheinandergewürfelt ist. Wie gesagt, kann man auch das Bios direkt über die Interrupts abfragen. Lies mal die Links durch und wühle Dich durch HelpPC oder die RB-Liste. Ansonsten kommst Du halt um die API-Abfrage nicht drum herum. Natürlich kann man auch die Registry-Keys abfragen, aber das ist auch nicht sehr viel einfacher (eher andersrum).
  6. Crush

    Lob ans Forum

    Warum OT? Ist doch schließlich an die C++-Community gerichtet und nicht an den Rest der Welt!
  7. Sag mal, wieviele 1000 Threads willst Du denn noch aufmachen? Schau Dir lieber mal einen der alten an und dann wirst Du schon sehen: http://www.fachinformatiker-world.de/forums/showthread.php?s=&threadid=17736 Du hast ja schon reingeschaut wie ich gerade bemerkt habe. Dann bleibe doch bitte in diesem und starte nicht ständig was Neues mit derselben Frage. Wenn man zigmal dasselbe Frägt in zig verschiedenen Foren, dann ist es klar, das einer nach dem anderen geschlossen wird. ALSO: In Zukunft nur 1x fragen und nur dort nachschauen sonst könnte Dir dasselbe passieren wie dem armen =8-) ADMIN ( http://www.fachinformatiker-world.de/forums/showthread.php?s=&threadid=19242 )! Wenn Du mit diesen Infos, die ich gegeben habe nix anfangen kannst, dann schau doch mal bei Borland in die Community rein: http://community.borland.com/
  8. Was glaubst Du, warum es mal vor einiger Zeit hier in Deutschland eine Rechtschreibreform gab (die allerdings nicht viel geholfen hat - obwohl ich´s sehr gut finde, mich aber trotzdem lieber an die alte Rechtschreibung halte). Die Chats tragen dann noch den letzten Rest dazu bei, daß die Leute es sich immer schwerer machen noch korrekt schreiben zu können. Irgendwann werden alle so reden und schreiben, wie es in den Chats immer mehr ausartet. Was man nicht praktiziert verlernt man auch irgendwann.
  9. Sagt ja keiner was - Dein set(get())-Vorschlag war doch trotz allem sehr gut! Es stimmt aber, daß gerade bei programmtechnischen Themen die Fragestellung von den Leuten noch ein kleines wenig genauer ausgearbeitet sein könnte. Manchmal lag ich ja auch ziemlich daneben - und hab´s erst später mal mitbekommen.
  10. Erst mal will ich nur sagen, daß ich gerade auf den anderen Thread posten wollte und als ich abschicken wollte, war der schon weggelöscht (DANKE!!! Alle Arbeit war umsonst ... grunz ... deshalb nochmal): Übers Bios kommst Du nur an Hardware-Informationen. Wie man diese über Assembler oder C abfrägt habe ich hier mal angeschnitten: http://www.fachinformatiker-world.de/forums/showthread.php?s=&threadid=12478&highlight=int86 & http://www.fachinformatiker-world.de/forums/showthread.php?s=&threadid=12565&highlight=int86 Zusätzlich brauchst Du dafür allerdings noch die IRQ- & Port-Liste HelpPC ( http://www.faqs.org/faqs/assembly-language/x86/general/part1/section-6.html ) oder Die noch bessere (aber meiner Meinung nach etwas zu umfangreiche) Browns Interrupt-Liste: ( http://www.ctyme.com/rbrown.htm ) Ich habe kein Borland, aber die API liefert normal schon globale Methoden für Systeminformationen, welche halt bei Borland evtl. vom Namen etwas abweichen könnten. Nach Includes suchst Du am besten unter dem Stichwort (Win-)API oder in den unteren Abschnitten nach den .libs. Das nachfolgende kopier ich, weil´s mir zuviel ist. Das GetSystemInfo füllt eine leere Systeminfo-Structure auf, welche Du weiter unten findest. GetSystemInfo The GetSystemInfo function returns information about the current system. VOID GetSystemInfo( LPSYSTEM_INFO lpSystemInfo // address of system information // structure ); Parameters lpSystemInfo Pointer to a SYSTEM_INFO structure to be filled in by this function. Return Values This function does not return a value. QuickInfo Windows NT: Requires version 3.1 or later. Windows: Requires Windows 95 or later. Windows CE: Requires version 1.0 or later. Header: Declared in winbase.h. Import Library: Use kernel32.lib. System Information Functions The following functions are used to retrieve or set system information. ExpandEnvironmentStrings GetComputerName GetCurrentHwProfile GetKeyboardType GetSysColor GetSystemDirectory GetSystemInfo GetSystemMetrics GetUserName GetVersionEx GetWindowsDirectory IsProcessorFeaturePresent SetComputerName SetSysColors SystemParametersInfo Obsolete Functions GetVersion System Information Structures The following structures are used with system information. ANIMATIONINFO HW_PROFILE_INFO MINIMIZEDMETRICS NONCLIENTMETRICS OSVERSIONINFO OSVERSIONINFOEX SYSTEM_INFO SYSTEM_INFO The SYSTEM_INFO structure contains information about the current computer system. This includes the architecture and type of the processor, the number of processors in the system, the page size, and other such information. typedef struct _SYSTEM_INFO { // sinf union { DWORD dwOemId; struct { WORD wProcessorArchitecture; WORD wReserved; }; }; DWORD dwPageSize; LPVOID lpMinimumApplicationAddress; LPVOID lpMaximumApplicationAddress; DWORD dwActiveProcessorMask; DWORD dwNumberOfProcessors; DWORD dwProcessorType; DWORD dwAllocationGranularity; WORD wProcessorLevel; WORD wProcessorRevision; } SYSTEM_INFO; Members dwOemId An obsolete member that is retained for compatibility with previous versions of Windows NT. Beginning with Windows NT 3.51 and the initial release of Windows 95, use the wProcessorArchitecture branch of the union. Windows 95: The system always sets this member to zero, the value defined for PROCESSOR_ARCHITECTURE_INTEL. wProcessorArchitecture Specifies the system's processor architecture. This value can be one of the following values: Value PROCESSOR_ARCHITECTURE_INTEL Windows NT: PROCESSOR_ARCHITECTURE_MIPS Windows NT: PROCESSOR_ARCHITECTURE_ALPHA Windows NT: PROCESSOR_ARCHITECTURE_PPC Windows NT: PROCESSOR_ARCHITECTURE_UNKNOWN wReserved Reserved for future use. dwPageSize Specifies the page size and the granularity of page protection and commitment. This is the page size used by theVirtualAlloc function. lpMinimumApplicationAddress Pointer to the lowest memory address accessible to applications and dynamic-link libraries (DLLs). lpMaximumApplicationAddress Pointer to the highest memory address accessible to applications and DLLs. dwActiveProcessorMask Specifies a mask representing the set of processors configured into the system. Bit 0 is processor 0; bit 31 is processor 31. dwNumberOfProcessors Specifies the number of processors in the system. dwProcessorType Windows 95: Specifies the type of processor in the system. Windows NT: This member is no longer relevant, but is retained for compatibility with Windows 95 and previous versions of Windows NT. Use the wProcessorArchitecture, wProcessorLevel, and wProcessorRevision members to determine the type of processor. This member is one of the following values: Value PROCESSOR_INTEL_386 PROCESSOR_INTEL_486 PROCESSOR_INTEL_PENTIUM Windows NT: PROCESSOR_MIPS_R4000 Windows NT: PROCESSOR_ALPHA_21064 dwAllocationGranularity Specifies the granularity with which virtual memory is allocated. For example, a VirtualAlloc request to allocate 1 byte will reserve an address space of dwAllocationGranularity bytes. This value was hard coded as 64K in the past, but other hardware architectures may require different values. wProcessorLevel Windows 95: This member is not used. Windows NT: Specifies the system's architecture-dependent processor level. If wProcessorArchitecture is PROCESSOR_ARCHITECTURE_INTEL, wProcessorLevel can be one of the following values: Value Meaning 3 Intel 80386 4 Intel 80486 5 Pentium If wProcessorArchitecture is PROCESSOR_ARCHITECTURE_MIPS, wProcessorLevel is of the form 00xx, where xx is an 8-bit implementation number (bits 8-15 of the PRId register). The member can be the following value: Value Meaning 0004 MIPS R4000 If wProcessorArchitecture is PROCESSOR_ARCHITECTURE_ALPHA, wProcessorLevel is of the form xxxx, where xxxx is a 16-bit processor version number (the low-order 16 bits of a version number from the firmware). The member can be one of the following values: Decimal Value Meaning 21064 Alpha 21064 21066 Alpha 21066 21164 Alpha 21164 If wProcessorArchitecture is PROCESSOR_ARCHITECTURE_PPC, wProcessorLevel is of the form xxxx, where xxxx is a 16-bit processor version number (the high-order 16 bits of the Processor Version Register). The member can be one of the following values: Decimal Value Meaning 1 PPC 601 3 PPC 603 4 PPC 604 6 PPC 603+ 9 PPC 604+ 20 PPC 620 wProcessorRevision Windows 95: This member is not used. Windows NT: Specifies an architecture-dependent processor revision. The following table shows how the revision value is assembled for each type of processor architecture. Processor Architecture Value Intel 80386 or 80486 A value of the form xxyz. If xx is equal to 0xFF, y - 0xA is the model number, and z is the stepping identifier. For example, an Intel 80486-D0 system returns 0xFFD0. If xx is not equal to 0xFF, xx + 'A' is the stepping letter and yz is the minor stepping. Intel Pentium, Cyrix, or NextGen 586 A value of the form xxyy, where xx is the model number and yy is the stepping. For example, a value of 0x0201 indicates Model 2, Stepping 1. MIPS A value of the form 00xx, where xx is the 8-bit revision number of the processor (the low-order 8 bits of the PRId register). ALPHA A value of the form xxyy, where xxyy is the low-order 16 bits of the processor revision number from the firmware. Display this value as follows: Model 'A'+xx, Pass yy PPC A value of the form xxyy, where xxyy is the low-order 16 bits of the Processor Version Register. Display this value as a fixed point number: xx.yy Remarks Beginning with Windows NT 3.51 and the initial release of Windows 95, the SYSTEM_INFO structure has changed as follows: The dwOemId member has been changed to a union. The union supports a new way to describe processor architecture used by Windows NT, while maintaining compatibility with Windows 95 and previous versions of Windows NT. The dwProcessorType member is now obsolete on Windows NT. It is still used on Windows 95. A previously reserved DWORD member at the end of the structure has been replaced by the wProcessorLevel and wProcessorRevision members. Windows 95 does not use these members. QuickInfo Windows NT: Requires version 3.1 or later. Windows: Requires Windows 95 or later. Windows CE: Requires version 1.0 or later. Header: Declared in winbase.h.
  11. Also langsam wird´s hier ja richtig heftig. Die Admins wären nicht Admins, wenn sie nicht eine gewissen Entscheidungsgewalt über das Board hätten, vor allem wenn sie auch noch so geschlossen einer Meinung sind. Klar fühlt sich der ADMIN (find ich auch nicht gut als Nick in einem Forum) angegriffen aber ich bin auch der Meinung, daß man konstruktive Threads durch unsinnige Beiträge ziemlich ins Führerlose gleiten lassen kann. Nicht jeder liest die ersten paar Zeilen und macht dann bei Post 105 normal weiter - viele sehen sich nur die letzten 2-3 Posts an und schreiben dann was, was darauf basiert. Doch das sollte halt möglichst konstruktiv sein und doch nicht vom Thema abweichen. Wenn sich halt lauter neue Fragen ergeben (wie was ist OT? was mir jetzt klar ist), dann sollte man ja eigentlich auch einen neuen Thread damit eröffnen - ich bereue es auch, daß ich nicht lieber eine PM geschickt habe und stattdessen hier eine Off-Topic-Frage gestellt habe, die wohl keiner, der diese Frage in Zukunft hat, jemals hier suchen oder finden wird. Man hätte diese Frage von mir aus aus diesem Thread entfernen und mich ermahnen sollen. Das wäre richtig gewesen. Vor allem, weil ich ca. 10 Sekunden nach meinem Post schon per PM-popup die Antwort bekam (Danke Bimei!)! Das ist mir auch erst später nochmal eingefallen - aber ich wollt ja, daß es auch was damit zu tun hat und OT fiel mir wirklich ums Verrecken nicht ein. Ich finde man sollte den Admins ihren Job kritiklos machen lassen, weil die das ja auch nicht zum Spaß machen um mal ein paar User abzuschießen, sondern um die Qualität des FI-Forums beizubehalten. Es gibt glaub nur sehr wenige so extrem gut gewartete Foren wie dieses hier - und wenn man Verwarnungen erhält, dann sollte man die halt ernst nehmen. Ich habe ja auch mal ein paar Dinge hier abgelassen, bei denen es mich fast gewundert hat, daß man nur zensiert und mich nicht gleich vom Board gekickt hat (mein Trinkspruch z.B., wer´s noch weiß). Aber ich habe nur allein dadurch schon gelernt und versuche mich nicht mehr so gehen zu lassen. Wenn jemand Fragen hat, dann sucht er nicht die Foren nach den Inhalten ab, sondern eher nach den Überschriften. Im Grunde genommen besteht ja auch (fast) jeder Thread aus einer Frage und nicht aus 10 - und so sollte das auch bleiben. Und sollte mich tatsächlich mal das FI-Grab erreichen und ich werde gekickt, dann werde mich reumütig in mein Schicksal ergeben (solange es gerechtfertigt ist) und mich halt ins Exil zum http://fachinformatiker.net/ begeben! =8-) Also erkennt die weisen Entscheidungen der Admin-Gemeinde an oder versucht wenigstens Euch mit denen auf zivilisierte Weise zu einigen.
  12. Ist in meinem Fall vielleicht besser die Abfrage so zu machen: if ((lampe-1)&0xfc) return 0; // wenn´s denn sein muß weil die Lampe 1 auch die Zahl 1 darstellt. Nein, ist auch blöd, weil dann 0 nicht abgecheckt wird... bleiben wir lieber doch beim < und > Vergleich... Obwohl man davon ausgeht, daß man nur eine Lampe an oder ausschalten kann, die auch eine Nummer >0 hat... =8-D Aber mit sowas kann man sich ja sonstwie lange die Haare ausraufen, bis man keine mehr hat. Da kommt man sich vor als ob man sich über "Sein - oder nicht Sein?" frägt.
  13. Uli´s Ansatz gefällt mir ganz gut. Allerdings ist da nur das Lampensetzen drin, man muß aber den Modus noch ausmaskieren und neu setzen und auch Jaipur hat das übersehen, deshalb klappt das so nicht. unsigned char schalte_Lampe_ein(unsigned char lampe, unsigned char modus) { if (lampe>4 || lampe<1)) return 0; // wenn´s denn sein muß set( get() &~(1<<(lampe+3)) | (1<<(lampe-1)) + (modus<<(lampe+3))); // setzen, löschen, Modus mask & Modus set auf einmal return ( get() ); } Da man jedoch ausgeht, daß die Lampenschaltung nur einmal existiert, könnte man ja auch mit einer static-Variable arbeiten und sich so das get() set() sparen. Bei Hardware-Adressen wird praktisch immer mit statics gearbeitet und wenn es sich nicht nur um Output-Adressen, sondern auch oder nur um Input-Adressen handelt, wird immer mutable bei der (Klassen-)Deklaration dazugefügt. static unsigned char w=0; void schalte_Lampe_ein(unsigned char lampe, unsigned char modus) { w = w&~(1<<(lampe+3)) | (1<<(lampe-1)) + (modus<<(lampe+3)); }
  14. Stand im FI-Büchlein nicht ein Beispiel drin? Dachte ich jedenfalls... ansonsten sollte der KLR-Unterricht doch schon reichen um zu wissen wie man´s anpackt.
  15. Es gibt sogar noch viel besseres wie z.B. Geo- und Bio-Informatiker.
  16. Wenn der Flasher selber den Reset ausgeführt hat, dann sollte das Rom auch richtig geflashed worden sein. War halt eine blöde BIOS-Einstellung. Gerade wenn man an Bus-Zyklen RAS/CAS, usw. rumfummelt kann es sein, daß nix mehr richtig funktioniert. Ich hatte damals irgendwas an den Netzwerkfunktionen rumgewurstelt als plötzlich alles tot war.
  17. DCOM zählt aber wieder eher zum Thema Corba und verteilte Anwendungen. Oder gibt´s damit eine Möglichkeit Programme beim anderen einfach zu starten? Ich dachte, daß da auch immer ein Gegenstück laufen muß.
  18. Ich will mich nicht in diese Diskussion einmischen und nur kurz nachfragen, was eigentlich OT heißt. Out of Thread? (so wie diese Frage zu Diesem)
  19. Vielleicht bringt der Reset was, weil ich auch mal in den Setups ein Board abgeschossen hatte - und nach dem Board-Reset ging´s wieder. Sollte das Flashen nicht funktioniert haben, kommst Du ums Neubrennen nicht mehr drum herum - bei mir haben aber glücklicherweise bisher alle Flashrom-Updates immer funktioniert. Probier also erst den Reset aus und laß das Bios im Default laufen wenn es gehen sollte.
  20. Crush

    MS-DOS gesucht ?!?!

    War das Caldera OpenDOS nicht ziemlich kompatibel zu MS-DOS? Es gab glaub sogar noch ein paar andere DOS-Clones mit Erweiterungen und Verbesserungen.
  21. Powerquest ist einfach genial. Und auf Heftchen bekommt man auch schon billig gute Vollversionen hinterher geworfen.
  22. ... ist ja richtig luschtig. Ich glaube, daß ich mich selbst bei diesem Spielchen disqualifiziere, weil ich mir einfach zu wenig Musik anhöre oder Fernseh schaue und wenn, dann achte ich überhaupt nicht auf den Text ... aber schon toll, was die Übersetzer heute so alles leisten (kicher).
  23. Das geht wohl kaum, sonst sähe es mit Viren ziemlich böse aus. Entweder wird drüben eine Message erwartet und ein laufendes Programm reagiert darauf mit dem Starten der Datei ... oder man versucht mit sowas wie ActiveX den Vorgang anzuwerfen (da muß halt ein Zertifikat dranhängen) - da geht dann aber die Sicherheitsstufe runter ohne SSL und natürlich muß halt ein Browser das auch unterstützten (ich kenne mich mit sowas nicht besonders aus, kann mir aber schlecht vorstellen, daß man einfach so von draußen eine exe direkt starten kann - schon gar nicht nur über Sockets) ansonsten ist die einfachste Methode noch über RAS (oder sonstwelche Fernsteuerprogramme - die aber wieder eine Gegenstück installiert und laufen haben müssen).
  24. Gratulation! Dann mal viel Spaß!
  25. @Lpd "Natürlich kann auch ich nicht garantieren, dass es mit diesen Hunden zu keinen Zwischenfällen kommen kann, aber das macht nichts, das kann man eben nicht. " -> Wer kann das für seinen Hamster, seine Schlangen, seine Skorpione, seine Kinder, seine Verwandten oder sonstwen oder was geben? Gibt es sowas wie Garantien? Sogar über sich selbst kann man keine Garantien geben, sonst wäre es wohl kaum möglich, das man schon fünf Minuten nach diesem Gespräch jemand mit dem Auto über den Haufen fährt - natürlich unabsichtlich. Es geht bei dieser ganzen Thematik nicht um Garantien, sondern um verantwortungsbewußtes und vorausschauendes Handeln. Diese Regelung würde bedeuten, daß allen Stadtstreichern und Pennern ihre Hunde weggenommen werden würden - abgesehen von den Massen von Bürgern, die auch zu den Betroffenen zählen. Kannst Du Dir vorstellen wieviele zig zehntausende das wären, die es auf einmal einzuschläfern gilt? Also ich würde mich schuldig fühlen, wenn ich sowas unterstütze und könnte danach keinem Hund mehr in die Augen sehen.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...