Erstmal hallo an alle,
ich bin jetzt seit ein paar Tagen dabei C++ zu lernen.
Benutze dazu ein Buch un bin momentan bei Strings,Feldern, Adressen.
Muss gerade eine Funktion schreiben, die prüft ob Kleinbuchstaben in einem String vorhanden sind, diese in Großbuchstaben umwandelt und die Anzahl der Umwandlungen angibt.
Soweit so gut, ist ja eigtl. nix großes dabei.
Habe dann mein Programm geschrieben:
Ich weiß man kann die "Hochtickung" des Strings auch mit der Adresse lösen: string++, aber ich wollte diesmal diese Variante ausprobieren, funktioniert aber leider nicht.
kapitel 11.1.cpp(6) : error C2059: Syntaxfehler: 'Konstante'
Die Lösung in meinem Buch lautet wie folgt:
Okay, hier wird eine while-Schleife benutzt und halt die Adresse um die größer der Variablen "hochgetickt".
Aber mein Programm sollte doch auch funktionieren, oder nicht?
Was mache ich falsch?
Danke schonmal im Voraus für eure Hilfe!!
MfG Paulmann
ich bin jetzt seit ein paar Tagen dabei C++ zu lernen.
Benutze dazu ein Buch un bin momentan bei Strings,Feldern, Adressen.
Muss gerade eine Funktion schreiben, die prüft ob Kleinbuchstaben in einem String vorhanden sind, diese in Großbuchstaben umwandelt und die Anzahl der Umwandlungen angibt.
Soweit so gut, ist ja eigtl. nix großes dabei.
Habe dann mein Programm geschrieben:
#include "stdafx.h"
using namespace std;
int upstring(char *string,15)
{
int i=0;
for(i=0;i<15;i++)
{
int anzahl=0;
if(islower(string))
{ string=toupper(string);
anzahl++;
}
return(anzahl);
}
}
int _tmain(int argc, _TCHAR* argv[])
{
char kette[15];
int anz,ende;
cin.getline(kette,15);
anz=upstring(kette);
cout << kette << endl;
cin >> ende;
return 0;
}
Ich weiß man kann die "Hochtickung" des Strings auch mit der Adresse lösen: string++, aber ich wollte diesmal diese Variante ausprobieren, funktioniert aber leider nicht.
kapitel 11.1.cpp(6) : error C2059: Syntaxfehler: 'Konstante'
Die Lösung in meinem Buch lautet wie folgt:
#include "stdafx.h"
using namespace std;
int upstring(char *s)
{
int a=0;
while(*s)
{
if(islower(*s))
{
*s=toupper(*s);
a++;
}
s++;
}
return(a);
}
int _tmain(int argc, _TCHAR* argv[])
{
char quelle[160];
int umw,ende;
cout << " Bitte String eingeben:";
cin.get(quelle,160);
umw=upstring(quelle);
cout << "Umgewandelter String :\"" << quelle << "\" . \n";
cout << "Umwandlungen:" << umw << endl;
cin >> ende;
return 0;
}
Okay, hier wird eine while-Schleife benutzt und halt die Adresse um die größer der Variablen "hochgetickt".
Aber mein Programm sollte doch auch funktionieren, oder nicht?
Was mache ich falsch?
Danke schonmal im Voraus für eure Hilfe!!
MfG Paulmann