matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Forenbaum
^ Forenbaum
Status Mathe
  Status Schulmathe
    Status Primarstufe
    Status Mathe Klassen 5-7
    Status Mathe Klassen 8-10
    Status Oberstufenmathe
    Status Mathe-Wettbewerbe
    Status Sonstiges
  Status Hochschulmathe
    Status Uni-Analysis
    Status Uni-Lin. Algebra
    Status Algebra+Zahlentheo.
    Status Diskrete Mathematik
    Status Fachdidaktik
    Status Finanz+Versicherung
    Status Logik+Mengenlehre
    Status Numerik
    Status Uni-Stochastik
    Status Topologie+Geometrie
    Status Uni-Sonstiges
  Status Mathe-Vorkurse
    Status Organisatorisches
    Status Schule
    Status Universität
  Status Mathe-Software
    Status Derive
    Status DynaGeo
    Status FunkyPlot
    Status GeoGebra
    Status LaTeX
    Status Maple
    Status MathCad
    Status Mathematica
    Status Matlab
    Status Maxima
    Status MuPad
    Status Taschenrechner

Gezeigt werden alle Foren bis zur Tiefe 2

Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenC/C++Bitsset STL
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Geschichte • Erdkunde • Sozialwissenschaften • Politik/Wirtschaft
Forum "C/C++" - Bitsset STL
Bitsset STL < C/C++ < Programmiersprachen < Praxis < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Bitsset STL: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 17:04 Fr 10.06.2011
Autor: wieschoo

Hi,

ich suche soetwas wie den bitset-Datentyp der STL. Diesen Datentyp kann ich leider nicht nehmen, da bei mir bitset<10000> leider nicht das  macht, was es soll. Eine dynamische Lösung wollte ich eigentlich ausschließen, da ich früher oder später sowieso alle 10000 Sachen durchgehen muss.

Gibt es da ne tolle Alternative?

Es sollte eigentlich nur Bits speichern und direkt ansprechen können. Desweiteren brauche ich soetwas, wie OR , reset() , count() (ähnlich dem vom bitset)

reset oder count kann ich vielleicht noch manuell programmerien. Vorgefertigte Lösung sind aber bestimmt schneller.

EDIT: Geht doch. Aber eine Alternative wäre doch besser. Ich glaub nicht, das bitset für soetwas ausgelegt ist.

        
Bezug
Bitsset STL: Antwort
Status: (Antwort) fertig Status 
Datum: 00:01 Sa 11.06.2011
Autor: felixf

Moin!

> ich suche soetwas wie den bitset-Datentyp der STL. Diesen
> Datentyp kann ich leider nicht nehmen, da bei mir
> bitset<10000> leider nicht das  macht, was es soll. Eine
> dynamische Lösung wollte ich eigentlich ausschließen, da
> ich früher oder später sowieso alle 10000 Sachen
> durchgehen muss.
>  
> Gibt es da ne tolle Alternative?
>  
> Es sollte eigentlich nur Bits speichern und direkt
> ansprechen können. Desweiteren brauche ich soetwas, wie OR
> , reset() , count() (ähnlich dem vom bitset)

Was soll diese Alternative denn von std::bitset<> unterscheiden? Bzw. was soll sie koennen, was std::bitset<> nicht kann?

> EDIT: Geht doch. Aber eine Alternative wäre doch besser.
> Ich glaub nicht, das bitset für soetwas ausgelegt ist.

Was genau meinst du mit "soetwas"? Du musst schon genauer sagen was du haben willst und vor allem was das was du haben willst von std::bitset<> unterscheiden soll.

LG Felix


Bezug
                
Bezug
Bitsset STL: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 11:37 So 12.06.2011
Autor: wieschoo


> Was genau meinst du mit "soetwas"? Du musst schon genauer
> sagen was du haben willst und vor allem was das was du
> haben willst von std::bitset<> unterscheiden soll.

Hi,

erst einmal danke für deine Antowrt. Mit "soetwas" meine ich wie
1: bitset<5000000000> data;
2: data &= 0xfff;
diese UND-Verknüpfung geht leider nur, wenn ich mehrere bitset-Variablen habe. Allerdings wird da mein Speicher sehr knapp.

Mir würde ja auch schon soetwas wie
1: bitset<5000000000> data,data2;
2: data2 = 0xfff;
3: data &= data2;
helfen, da ich am Ende eine Bitsetvariable über habe.

Konkret habe ich genau 3 von diesen Bitset-Variablen data1,data2,data3 und möchte jetzt bei data2,data3 alle Bits ab einer Stelle n mit 0 belegen,z.B.

data1 = "11101000100011|1110011001 ...."
wird zu
data1 = "11101000100011|0000000000 ...."

Bis jetzt mache ich das in einer Schleife. Geht zwar auch. Aber wenn ich schon mit Bits arbeite, dann hätte ich gedacht, dass man einfach ein logisches UND mit einem "hardcoded" Integer macht, wie halt
data &= 0xfff;

Anscheinend ist das nicht vorgesehen.
Kennt sich da jemand vielleicht damit aus. Google ist in diesem Fall auch nicht mein Freund.



Bezug
                        
Bezug
Bitsset STL: Antwort
Status: (Antwort) fertig Status 
Datum: 22:43 So 12.06.2011
Autor: felixf

Moin,

> > Was genau meinst du mit "soetwas"? Du musst schon genauer
> > sagen was du haben willst und vor allem was das was du
> > haben willst von std::bitset<> unterscheiden soll.
>  
> erst einmal danke für deine Antowrt. Mit "soetwas" meine
> ich wie
>  
1: bitset<5000000000> data;
2: >  data &= 0xfff;
diese UND-Verknüpfung geht leider

> nur, wenn ich mehrere bitset-Variablen habe. Allerdings
> wird da mein Speicher sehr knapp.
>  
> Mir würde ja auch schon soetwas wie
>  
1: bitset<5000000000> data,data2;
2: >  data2 = 0xfff;
3: >  data &= data2;
helfen, da ich am Ende eine

> Bitsetvariable über habe.
>  
> Konkret habe ich genau 3 von diesen Bitset-Variablen
> data1,data2,data3 und möchte jetzt bei data2,data3 alle
> Bits ab einer Stelle n mit 0 belegen,z.B.
>  
> data1 = "11101000100011|1110011001 ...."
>  wird zu
>  data1 = "11101000100011|0000000000 ...."
>  
> Bis jetzt mache ich das in einer Schleife. Geht zwar auch.
> Aber wenn ich schon mit Bits arbeite, dann hätte ich
> gedacht, dass man einfach ein logisches UND mit einem
> "hardcoded" Integer macht, wie halt
>  data &= 0xfff;
>  
> Anscheinend ist das nicht vorgesehen.

Weil nicht klar ist was damit gemeint ist. Es koennte ja auch gemeint sein, dass die Maske auf jedes DWord (oder was auch immer die Grundeinheit ist) des bitsets angewendet werden soll.

Du koenntest []boost::dynamic_bitset verwenden, und das bitset erst auf 12 Bit zusammenkuerzen (per resize) und dann wieder auf die volle Laenge erweitern (ebenfalls per resize). Beim Erweitern kannst du den Wert fuer die neuen Bits explizit vorgeben.

LG Felix


Bezug
                                
Bezug
Bitsset STL: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 22:52 Do 23.06.2011
Autor: wieschoo

Danke. Ich lass es doch lieber bei der Schleife.
Das mit dem resize muss ich noch einmal ausprobieren.

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "C/C++"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.matheraum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]