Die Suche ergab 1747 Treffer
- 08.07.2023, 10:46
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: c-faq.com - UB in Snippet?
- Antworten: 22
- Zugriffe: 10755
Re: c-faq.com - UB in Snippet?
The result of E1 << E2 is E1 left-shifted E2 bit positions; vacated bits are filled with zeros. If E1 has an unsigned type, the value of the result is E1 × 2^E2, wrapped around. If E1 has a signed type and nonnegative value, and E1 × 2^E2 is representable in the result type, then that is the result...
- 04.07.2023, 12:09
- Forum: Grafikprogrammierung
- Thema: double in shader und texture
- Antworten: 10
- Zugriffe: 3629
Re: double in shader und texture
Ich will nicht, aber ich brauche für den Algorithmus diese Genauigkeit. Ist natürlich sehr schade das die Leistung dann derart in die Kniee geht. Beachte, dass die FP64 performance da in etwa gleichauf mit einer modernen CPU ist. Die GPU zu verwenden ist in der Regel mit etwas Overhead verbunden un...
- 03.07.2023, 23:08
- Forum: Grafikprogrammierung
- Thema: double in shader und texture
- Antworten: 10
- Zugriffe: 3629
Re: double in shader und texture
ich wollte mal fragen, ob es irgendwie möglich ist in Shadern und Texturen den Datentype double zu verwenden ? Ich bräuchte es für ein zukünftiges Projekt. Möglichst für DirectX 11 oder 12. CUDA wäre aber auch im Rahmen des Möglichen... Können? Unter Umständen ja. Aber das willst du nicht. Außer du...
- 03.07.2023, 22:34
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: c-faq.com - UB in Snippet?
- Antworten: 22
- Zugriffe: 10755
Re: c-faq.com - UB in Snippet?
Müsste man da nicht zu unsigned long casten? Ich würde mal sagen ja, das schaut mir auf jeden Fall nach UB aus. Bachte auch, dass das ja C ist und nicht C++20. In C++ wäre das OK [expr.shift]/2 (seit C++20). In C aber nicht: https://open-std.org/JTC1/SC22/WG14/www/docs/n3096.pdf 6.5.7/3 (Seite 85)....
- 01.06.2023, 23:29
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Clang mit MSVC - minimale Installation (Anleitung)
- Antworten: 17
- Zugriffe: 3053
Re: Clang mit MSVC - minimale Installation (Anleitung)
Gibt es einen Weg unter Windows professionell Software zu enwtickeln ohne für die MSVC Runtime irgendwie zu bezahlen? Hatte mir das mal angesehen und keinen offensichtlichen gesehen; kann mich aber auch nicht mehr an die genauen Rahmenbedingungen erinnern. Alles in WSL laufen zu lassen zählt nicht ...
- 01.06.2023, 13:11
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Clang mit MSVC - minimale Installation (Anleitung)
- Antworten: 17
- Zugriffe: 3053
Re: Clang mit MSVC - minimale Installation (Anleitung)
Rein prinzipiell sollte es glaub ich möglich sein, Clang auf Windows gänzlich ohne MSVC zu betreiben. Clang verwendet nur by default die MSVC Standardlibrary und den MSVC Linker. Wenn du Clang oder zumindest libc++ selber baust, solltest du einfach mit lld und libc++ arbeiten können. Windows SDK wir...
- 30.05.2023, 18:11
- Forum: Algorithmen und Datenstrukturen
- Thema: Verwirrt betreffend Rotationsgeschwindigkeit
- Antworten: 23
- Zugriffe: 6864
Re: Verwirrt betreffend Rotationsgeschwindigkeit
Und hier hadere ich nun. Der Wert, den ich dann bekomme – ist das die Anzahl voller Umdrehungen pro Sekunde oder rad/s ? Ich glaub der Schlüssel hier liegt in der Tatsache, dass rad keine fundamentale Einheit sondern eher eine dimensionslose Pseudoeinheit ist. 1 rad entspricht keiner direkten physi...
- 03.05.2023, 04:00
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: C - Differenzen von zwei unsigned int?
- Antworten: 29
- Zugriffe: 11217
Re: C - Differenzen von zwei unsigned int?
Wie sieht das mit Rust und Zig aus? Zig: UB (macht Sinn, ist ja stark Performanceorientiert) Rust: check + trap in Debug, wrap in Release (unschön weil weder wirklich safe noch maximal effizient, aus Performancegründen aber als notwendiger Kompromiss erachtet) + in beiden Sprachen gibt es auch Wege...
- 03.05.2023, 03:00
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: C - Differenzen von zwei unsigned int?
- Antworten: 29
- Zugriffe: 11217
Re: C - Differenzen von zwei unsigned int?
Ich glaube du verwechselst C und C++. Nope. Da gibt's nicht wirklich was zu verwechseln, C++ hat den ganzen Kram 1:1 von C geerbt, funktioniert in beiden Sprachen praktisch exakt gleich. C war schon immer ganz nahe dran an der Hardware […] Die Idee, dass C irgendwie besonders nahe an der Hardware i...
- 02.05.2023, 02:40
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: C - Differenzen von zwei unsigned int?
- Antworten: 29
- Zugriffe: 11217
Re: C - Differenzen von zwei unsigned int?
Du kannst also INT und UINT kunterbunt mischen und zuweisen, der Unterschied tritt nur bei einer Abfragen auf < 0 auf! signed und unsigned Integer "kunterbunt mischen" ist eine wunderbar schlechte Idee. Die Tatsache dass C das überhaupt erlaubt, ist einer der größten Designfehler in C… We...
- 13.04.2023, 17:45
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Forward Declaration "manuell" oder #include?
- Antworten: 29
- Zugriffe: 5685
Re: Forward Declaration "manuell" oder #include?
Also für mich ist vor allem wichtig dass der Code auf einer PDP-11 baut. Da nehme ich gerne entsprechende Design-Entscheidungen in Kauf *scnr*. Ist nicht unbedingt nur eine Frage obs auf einer PDP-11 läuft, sondern generell eine Frage der Skalierbarkeit. Zu vermeiden, dass Teile des Code mehrfach g...
- 13.04.2023, 01:59
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Forward Declaration "manuell" oder #include?
- Antworten: 29
- Zugriffe: 5685
Re: Forward Declaration "manuell" oder #include?
FWIW, Modules ändern nichts an der Tatsache, dass man in C++ Dinge deklarieren muss, bevor man sich auf sie beziehen kann. Modules bringen uns effektiv nur einen neuen Weg, Deklarationen zu importieren. Wenn du dein Module beispielsweise in separate Interface- und Implementation-units aufteilen will...
- 22.03.2023, 23:10
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: C - Differenzen von zwei unsigned int?
- Antworten: 29
- Zugriffe: 11217
Re: C - Differenzen von zwei unsigned int?
Offensichtlich ganz im Kontrast zu einem "Überlauf" eines Signed! Das Programmverhalten ist danach UB! Und das ist ja eigentlich genau das, was man wirklich nie haben möchte. Das Programmverhalten ist in beiden Fällen falsch denn Wraparound, egal wie er zustandekommt, ist so oder so eben ...
- 14.03.2023, 15:33
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: C - Differenzen von zwei unsigned int?
- Antworten: 29
- Zugriffe: 11217
Re: C - Differenzen von zwei unsigned int?
Aber worauf ich eigentlich hinaus wollte ist die Frage, welchen Unterschied das in der Praxis macht. Zunächst: In einer ganzen Reihe von Fällen wird der Compiler kein UB erkennen können, weil z.B. die Variablen von Usereingaben abhängen also unmöglich vorauszusagen sind. Und da es ja eine elementar...
- 13.03.2023, 20:28
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: C - Differenzen von zwei unsigned int?
- Antworten: 29
- Zugriffe: 11217
Re: C - Differenzen von zwei unsigned int?
Anmerkung: wenn Du die Differenz zweier int32 bilden willst, können ganz genauso Differenzen entstehen, die der Datentyp nicht mehr abbilden kann, wie bei uint32 . Der ganze Rest... tja, manchmal will man definierten Overflow haben, manchmal will man die Vorteile von UB haben. Sowas die definierten...
- 13.03.2023, 19:56
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: C - Differenzen von zwei unsigned int?
- Antworten: 29
- Zugriffe: 11217
Re: C - Differenzen von zwei unsigned int?
https://en.wikipedia.org/wiki/Integer_overflow Also, "signed integer sind normale Ganzzahlen" ist es doch auch irgendwie nicht. Wenn es bei zu großen Zahlen zu UB kommt, würde ich vermuten (ohne es getestet zu haben), dass man dann bei "größte Zahl plus eins" einfach häufig bei ...
- 13.03.2023, 03:04
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: C - Differenzen von zwei unsigned int?
- Antworten: 29
- Zugriffe: 11217
Re: C - Differenzen von zwei unsigned int?
Jede Variable für sich kann natürlich nur 0 oder positiv sein, die Differenz jedoch kann bekanntermassen ja negativ ausfallen. Das Grundproblem hier ist das gängige Missverständnis, dass unsigned bedeutet "kann nicht negativ sein". Das ist nicht was unsigned in C und C++ bedeutet. unsigne...
- 24.01.2023, 12:58
- Forum: Allgemeines Talk-Brett
- Thema: Jammer-Thread
- Antworten: 7641
- Zugriffe: 1960902
Re: Jammer-Thread
… Diese Antwort geht darauf ein: https://stackoverflow.com/questions/1433204/how-do-i-use-extern-to-share-variables-between-source-files/1433387#1433387 (such nach COMMON) Es ist wohl eine Erweiterung zwecks FORTRAN-Kompatibilität, durch die sowohl MSVC als auch GCC erlauben, Variablen unterschiedl...
- 24.01.2023, 05:25
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: 4 Bytes in Heap zu int
- Antworten: 36
- Zugriffe: 10707
Re: 4 Bytes in Heap zu int
Sicher dass das mit MSVC war und nicht, e.g., clang? Ich versuche seit Jahren , MSVC dazu zu bewegen, einigermaßen effizienten Code für portable Serialization/Deserialization zu generieren; bisher ohne Erfolg… Lustig: Heute veröffentlicht das Team einen Artikel, dass sie diese Optimierung vor Kurze...
- 24.01.2023, 03:25
- Forum: Allgemeines Talk-Brett
- Thema: Jammer-Thread
- Antworten: 7641
- Zugriffe: 1960902
Re: Jammer-Thread
In C ist es erlaubt, globale Variablen mehrfach mit unterschiedlichen Typen zu deklarieren. Der Linker muss dann die größere Repräsentation wählen. ka welche Version von C das sein soll, aber das hör ich zum ersten Mal. Generell gilt All declarations that refer to the same object or function shall ...
- 20.01.2023, 03:02
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: C++ Scheifen optimieren
- Antworten: 8
- Zugriffe: 2237
Re: C++ Scheifen optimieren
https://godbolt.org/z/hqrWTM5n1 generiert VMOVDQU YMM1 , was ohne genauere Inspektion erstmal für 32-Byte-Häppchen (acht int s parallel) spricht. Probier mal was komplexeres, z.B.: c = a * 0.5f + b . gcc scheint ganz akzeptablen Code zu generieren. msvc und clang dagegen failen völlig… Andererseits...
- 10.12.2022, 20:49
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Array-Grösse zur Laufzeit festlegen?
- Antworten: 23
- Zugriffe: 7767
Re: Array-Grösse zur Laufzeit festlegen?
Note: Das ist unspecified behavior; du darfst im Allgemeinen nicht einfach so Pointer oder Reference auf eine stdlib Function machen: https://eel.is/c++draft/constraints#namespace.std-6 ;) P.S.: Hast du zufällig auch noch eine Erklärung, wie sie darauf gekommen sind? afaik geht's drum dass stdlib F...
- 10.12.2022, 16:57
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Array-Grösse zur Laufzeit festlegen?
- Antworten: 23
- Zugriffe: 7767
Re: Array-Grösse zur Laufzeit festlegen?
Funktionspointer sind auch sehr komisch mit der Syntax, aber da führt kein Weg dran vorbei. Als Tipp für C++ (nicht C): using Allocator = void * (size_t); // function expecting a size and returning a void pointer Allocator * foo = &malloc; // Funktionszeiger Allocator & foo = malloc; ...
- 20.11.2022, 23:46
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: 4 Bytes in Heap zu int
- Antworten: 36
- Zugriffe: 10707
Re: 4 Bytes in Heap zu int
Update: Das Einlesen klappt dank eurer Hilfe soweit einwandfrei. Jedoch liefert mir fgetc() beim Lesen einer Datei beim Wert 26 (1A) EOF, statt den tatsächlichen Wert. Das lässt sich zwar umgehen, wenn ich den Modus von fopen() auf "rb" setze, jedoch bin ich mir nicht sicher, ob sich das ...
- 17.11.2022, 14:44
- Forum: Algorithmen und Datenstrukturen
- Thema: Vertices mergen und Reorganisation der Abhängigkeiten
- Antworten: 5
- Zugriffe: 3983
Re: Vertices mergen und Reorganisation der Abhängigkeiten
Mach ein Array wo für jeden Vertex dessen neuer Index drinsteht: Lauf über alle Vertices, zähl mit was der nächste freie Index ist. Wenn ein Vertex gelöscht werden soll wird der Counter nicht inkrementiert und stattdessen der Index des Vertex mit dem germerged werden soll ausgegeben (wenn bei zu mer...
- 15.11.2022, 12:18
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: 4 Bytes in Heap zu int
- Antworten: 36
- Zugriffe: 10707
Re: 4 Bytes in Heap zu int
VS hat bei mir zuverlässig das Rumshiften als EndianSwap erkannt und durch bswap ersetzt. Ist aber schon ne Weile her, dass ich das letzte Mal ins ASM geguckt habe Sicher dass das mit MSVC war und nicht, e.g., clang? Ich versuche seit Jahren , MSVC dazu zu bewegen, einigermaßen effizienten Code für...
- 14.11.2022, 17:07
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: 4 Bytes in Heap zu int
- Antworten: 36
- Zugriffe: 10707
Re: 4 Bytes in Heap zu int
Ja, genau das. BMP hat die Eigenschaft, dass die 32-Bit-Zahlen im Header nicht natürlich ausgerichtet sind (zwei statt vier Bytes). Also definitiv durch unsigned char * lesen und das uint32_t zusammenbauen. Der Vollständigkeit halber wäre hier noch die Variante mit memcpy() und anschließendem Verta...
- 31.10.2022, 14:33
- Forum: Algorithmen und Datenstrukturen
- Thema: [C++] Befülle eine Liste mit einzigartigen Elementen aus einer Liste von Alternativen
- Antworten: 7
- Zugriffe: 3954
Re: [C++] Befülle eine Liste mit einzigartigen Elementen aus einer Liste von Alternativen
Ich fühle hier sehr starke xy problem vibes…
Ich würde vorschlagen, dass du uns mal erklärst, was genau du mit der Lösung dieses Problems zu erreichen erhoffst.
Ich würde vorschlagen, dass du uns mal erklärst, was genau du mit der Lösung dieses Problems zu erreichen erhoffst.
- 28.10.2022, 23:09
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Sammelthread zu Visual C++’ Compiler
- Antworten: 100
- Zugriffe: 59216
Re: Sammelthread zu Visual C++’ Compiler
(Verschiedene Return-Pfade und -Werte schafft man ja auch mit Rvalues, oder verstehe ich was falsch?) X fun() { X x; if (funfun(&x)) return X(42); return x; } Was nun? Der Compiler kann x nicht in den Returnslot platzieren weil, im Falle dass das if genommen wird, muss er erst das Returnvalue k...
- 28.10.2022, 19:29
- Forum: Programmiersprachen, Quelltext und Bibliotheken
- Thema: Sammelthread zu Visual C++’ Compiler
- Antworten: 100
- Zugriffe: 59216
Re: Sammelthread zu Visual C++’ Compiler
Weil's dann im Allgemeinen nicht mehr möglich ist, garantiert zu wissen, dass die Copy elided werden kann. Es kann ja beliebig viele Returns geben, die über beliebig komplexen Kontrollfluss erreicht werden können. Und nicht alle diese Returns müssen überhaupt die selbe Variable returnen… siehe auch ...