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.

String durchsuchen

Empfohlene Antworten

moin moin

ich hab folgendes problem

ich schreibe verschiedene zahlen (2-3stellig) in einen string und möchte nun vermeiden das zahlen doppelt reingeschrieben werden.

wer hilft ?

Erzeuge ein STL-Set und checke einfach ab, ob die Zahl schon geschrieben wurde (jede Zahl ist dort nämlich nur einmal erlaubt) oder mache Dir ein Array, welches die Zahlen als int von mir aus beinhaltet und gehe es jedesmal durch, ob die Zahl schon vorhanden ist.

????????????

kannste das mal näher erläutern odre haste noch ne lösung die für einen anfänger einfacher ist

dachte da so an strstr oder strcmp oder so :(

if !(strstr(destinationstring,numberstring))

strcat(destinationstring,numberstring);

Darauf achten, daß Destionationstring auch groß genug ist, weil hier nirgendwo eine Bereichsprüfung stattfindet.

<FONT COLOR="#a62a2a" SIZE="1">[ 06. Dezember 2001 14:02: Beitrag 3 mal editiert, zuletzt von Crush ]</font>

danke dir !!! :D

Kleine Frage nebenbei! Wat is bitte ein:

STL-Set

Crush:

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR> Erzeuge ein STL-Set und checke einfach ab, ob die Zahl schon geschrieben wurde (jede Zahl ist dort nämlich nur einmal erlaubt) oder mache Dir ein Array, welches die Zahlen als int von mir aus beinhaltet und gehe es jedesmal durch, ob die Zahl schon vorhanden ist.

STL = Standard Template Library = Vorlagenklasse für (Daten-)Container aller Art

Ein Set entspricht einer Menge. Hier werden Zahlen aufgenommen, allerdings darf jede Zahl nur einmal vorkommen (ansonsten muß man das Multiset benutzen). Man muß dem Template den Container-Typ angeben, welcher in diesem (vielleicht blöden) Beispiel <int> ist.

Man kann leicht herausfinden, ob eine Zahl im Container enthalten ist, indem man sich einen Zeiger auf einen gesuchten Eintrag finden läßt und wenn es der gesuchte Wert ist, dann hat man ihn gefunden (ich mach das indem ich die Zahl einfach vom Ergebnis abziehe - nicht die feine englische Art, klappt aber). Ansonsten wird ein Zeiger auf ein Speichermußter zurückgegeben (letzer freier Eintrag der Liste)(0xdcdcdcdc).

#include <set>

set<int> stlint;

stlint.insert(1);

stlint.insert(5);

stlint.insert(9);

set<unsigned int>::iterator i=stlint.begin();

if (!(*(i=stlint.find(1))-1)) TRACE("Ist drin");

if (!(*(i=stlint.find(3))-3)) TRACE("Ist drin");

if (!(*(i=stlint.find(5))-5)) TRACE("Ist drin");

if (!(*(i=stlint.find(8))-8)) TRACE("Ist drin");

if (!(*(i=stlint.find(9))-9)) TRACE("Ist drin");

<FONT COLOR="#a62a2a" SIZE="1">[ 12. Dezember 2001 17:06: Beitrag 2 mal editiert, zuletzt von Crush ]</font>

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Konto

Navigation

Suchen

Suchen

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.