Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

String überprüfen ob bestimmte(s) Zeichen vorhanden sind

Frage Entwicklung C und C++

Mitglied: mghelp

mghelp (Level 1) - Jetzt verbinden

19.12.2006, aktualisiert 20.12.2006, 13944 Aufrufe, 6 Kommentare

#include <iostream.h>
#include<ctype.h>
#include<string.h>

int main()
{
string eingabe;
cout<<"\n Email Adresse eingeben : ";
cin >>eingabe;
for( int i = 0; i < eingabe.length(); i++ )
{
????????????????????
}
getchar();
return 0;
}

Ich möchte, dass die Eingabe überprüft wird,

Ob ein @vorhanden ist (muster@haus.de).

Wie müsste Schleife dann aussehen wie unten aufgeführt?
Wenn @ nicht vorhanden, dann--> Ausgabe "Inkorrekte Emailadresse" und springt
wieder zur Eingabe.

Wenn @ vorhanden, dann weiter (Schleife ist beendet).


Danke für eine Hilfe.

mghelp
Mitglied: 8644
19.12.2006 um 17:18 Uhr
Hi,

@mghelp:
Ist das eine Frage, ein Tutorial, ein Tipp oder was?
Ich finde es nicht gut, hier einen völlig unkommentierten Schnipsel hinzuwerfen!

[Edit: er hat es geändert! Mein Kommentar ist somit hinfällig!]

Psycho
Bitte warten ..
Mitglied: mghelp
19.12.2006 um 17:23 Uhr
Ich war grad dabei es zu erstellen
Bitte warten ..
Mitglied: 6890
19.12.2006 um 17:38 Uhr
hallo,

also ich kann leider kein c aber so univer sell müsste das funktionieren:
01.
//vor der schleife noch eine wahrvariable deklarieren 
02.
 
03.
int wahr=0; 
04.
while(wahr == 0) 
05.
06.
   cout<<"\n Email Adresse eingeben : "; 
07.
   cin >>eingabe; 
08.
   for( int i = 0; i < eingabe.length(); i++ ) 
09.
10.
       if(eingabe[i] eq "@") 
11.
12.
          printf("alles ok"); 
13.
          wahr = 1; 
14.
          last; 
15.
16.
   }  
17.
 
18.
    if(wahr == 0) 
19.
20.
        printf("Sie müssen eine gültige Email bla bla"); 
21.
22.
}
mfg godlike P
Bitte warten ..
Mitglied: Biber
19.12.2006 um 22:13 Uhr
Ich würde es eindampfen auf
01.
... 
02.
cout<<"\n Email Adresse eingeben : "; 
03.
cin >>eingabe; 
04.
if (eingabe.IndexOf("@")) { 
05.
   //alles prima 
06.
07.
....
Gruß
Biber
Bitte warten ..
Mitglied: mghelp
20.12.2006 um 14:51 Uhr
wenn ich das so mache entsteht ein Fehler.
Fehler E2316 10: "IndexOf" ist kein Element von "string"

oder ist da ein Fehler drin; oder Fehlet da noch was.

#include <iostream.h>
#include<ctype.h>
#include<string.h>
int main()
{
string eingabe;
cout<<"\n Email Adresse eingeben : ";
cin >>eingabe;
if (eingabe.IndexOf("@")) {
//alles prima
}
getchar();
return 0;
}

Danke euch zwei für die Hilfe
Bitte warten ..
Mitglied: Biber
20.12.2006 um 23:52 Uhr
*grmpf*

..wenn ich etwas liebe an C#/C++/C, dann die Einheitlichkeit und Portabilität...

Also, was auf jeden Fall (außer natürlich der Zeichen-für-Zeichen-for-Schleife oben) einfach da sein muss gemäß ANSI-C++-Spezifikation ist die Function "strchr()":

01.
const char * strchr ( const char * string, int c ); // Prototyp strchr()  
02.
// Prototyp auch manchmal:        char * strchr (       char * string, int c );
However, damit wäre der Weg:
01.
.... 
02.
char * pch; 
03.
... 
04.
pch=strchr(eingabe,'@'); 
05.
 
06.
if (pch!=NULL) { 
07.
  // alles Prima ... mindestens 1 "@" vorhanden... 
08.
09.
...
Jedenfalls, und das wollte ich auch im vorangegangenen Post ausdrücken, hätte ich nicht den Ehrgeiz, eine Ist-Zeichen-In-String-Enthalten-Funktion für C neu zu erfinden.
Da gibt es immer etwas.

HTH
Biber
Bitte warten ..
Ähnliche Inhalte
Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Internet
gelöst Jeden morgen Internet-Probleme (56)

Frage von pjrtvly zum Thema Internet ...

Server-Hardware
HP DL380 G7: Booten vom USB via USB 3.1-PCI-e Karte möglich? (24)

Frage von Paderman zum Thema Server-Hardware ...

Windows 7
Bluesreens unternehmensweit (22)

Frage von SYS64738 zum Thema Windows 7 ...

LAN, WAN, Wireless
gelöst IP Adressen - Modem - Switch - Accesspoint (22)

Frage von teuferl82 zum Thema LAN, WAN, Wireless ...