Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Suche mit 'und' - 'oder' Bedingung!

Empfohlene Antworten

Veröffentlicht

Hi, ich bin's mal wieder. Also, ich habe jetzt angefangen in meinem Programm (welches ja Dateien nach Suchbegriffen durchsucht, die inzwischen direkt über die Command Line mitgegeben werden) den User entscheiden zu lassen ob er die Begriffe mit 'und' oder 'oder' verknüfen will. Um dieses dann auszuwerten habe ich einen Counter benutzt. Mein Chef meinte jetzt es wäre besser ein Array zu nehmen in dem ich Flags setzte und dann hinterher entscheide wie das Ergebniss ausfällt. Wie mache ich soetwas :confused: ? Bitweises setzten auf true bzw. false?

Bine

Könntest Du nicht einfach mit einer Variable vom Typ "bool" arbeiten? Die kannst Du auf "true" oder "false" setzen, je nachdem ob der User beide Begriffe sucht (und-Verknüpfung) oder nur einen davon (oder-Verknüpfung).

Dann prüfst Du den Status der bool-Variable und entscheidest Dich dann für den richtigen Programmzweig...

Oder direkt den übergebenen Parameter prüfen, ohne einer bool-Variable true oder false zuzuweisen?!

Vielleicht verstehe ich die Frage aber auch nicht richtig?!

DocMabuse

<FONT COLOR="#a62a2a" SIZE="1">[ 12. November 2001 13:34: Beitrag 2 mal editiert, zuletzt von DocMabuse ]</font>

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von Woodstock:

<STRONG>Mein Chef meinte jetzt es wäre besser ein Array zu nehmen in dem ich Flags setzte und dann hinterher entscheide wie das Ergebniss ausfällt. Wie mache ich soetwas :confused: ? Bitweises setzten auf true bzw. false?

</STRONG>

Nein, lieber wäre mir ein Array mit boolschen Werten, aber ich habe davon (zumindest jetzt) noch keine Ahnung. Wie läuft das bei einem solchen Array. Kann ich das in der MSDN nachlesen? Wenn ja unter was? Muss ich das Array dynamisch anlegen?

Bine

Wenn ich mich recht entsinne, bist Du ja mit ANSI-C zugange. Da gibts keinen bool-Typ. Man nimmt einfach eine char-Variable. Ist sie Null, gilt das als false, in allen anderen Faellen ist sie true.

so etwa:

char c1=37, c2=-37, c3=0;

if (c1) ... true

if (c2) ... true

if (c3) ... false

Das Gleiche gilt fuer Ausdruecke:

if (c1+c2) ... false

if (c1-c2) ... true

if (c1*c3) ... false

Als Array:

char c[] = {37, -37, 0};

if (c[2]) ... false

Joo, so is datt...

Uli

Muss ich das Array denn jetzt dynamisch machen, oder von vornherein sehr groß wählen und hoffen das nichtmehr Suchbegriffe gesucht werden?

Bine

ja

Dynamische Arrays sind immer etwas toleranter und belegen keinen unnötigen Speicherplatz - daher tendiere ich immer dazu, wenn du damit klarkommst, ist das oft die günstigere Wahl :)

Der "klassische" C-Weg wäre ja entweder:


#define TRUE 1

#define FALSE 0

oder

enum mybool{false=0, true};

Allerdings sind bei MSVC, das du meines Wissens benutzt, TRUE und FALSE schon passend definiert und du kannst einfach den Typ bool benutzen.

Leider ist dein Code dann nicht mehr reines ANSI-C und infolgedessen nicht mehr portabel. Du kannst aber andere sprechende Namen verwenden, wie WAHR/FALSCH oder bineTrue/bineFalse ... ;)

Also das mein Code portabel ist, darauf kommt es wohl nicht an, denn sonst hätte mein Chef ja nicht gesagt ich solle boolsche Werte benutzen. Ich weiß nur nicht so ganz wie ich das anstellen soll. Klappt mal wieder nicht so wie ich es gerne hätte.

Bine

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.