Gross- Kleinschreibung umdrehen in C++?

DerSiebte

Mitglied
hi all..

Weiss jemand wie ich einen Text einlesen kann und dann die Gross- Kleinschreibung umdrehen kann?
z.B. den Text "Hallo Welt!" in "hALLO wELT!" umwandeln?

Danke schon im voraus für eure Antworten.

greez
DerSiebte
 
da Zeichenketten nix anderes als arrays sind, kannst du zB das array einzeln durchlaufen und dann mit der c-funktion tolower():

Code:
#include <stdio.h>
#include <ctype.h>
int main ()
{
  int i=0;
  char str[]="Test String.\n";
  char c;
  while (str[i])
  {
    c=str[i];
    putchar (tolower(c));
    i++;
  }
  return 0;
}

LG
Andy
 
Danke für deine Anwort.
Jetzt hab ich aber nochmal ein Problem. Wenn ich eine .txt datei einlesen will und diese einer Variabel zuweiss und dann diese Variable in den Code einbind von andy72 dann klappt das ihrgendwie nicht und ich weiss nicht wieso

lg
DerSiebte
 
Danke für deine Anwort.
Jetzt hab ich aber nochmal ein Problem. Wenn ich eine .txt datei einlesen will und diese einer Variabel zuweiss und dann diese Variable in den Code einbind von andy72 dann klappt das ihrgendwie nicht und ich weiss nicht wieso
... und wir wissen das auch nicht. Wir können nämlich nicht hellsehen, da unsere Glaskugel in Reparatur ist. ;)

Wäre evtl. nicht schlecht, wenn du mal deinen Code postest.

Gruß

PS: Hab nochmal ein kleines Beispiel gemacht wie man das elegant in C++ lösen könnte:
C++:
#include <iostream>
#include <iterator>
#include <algorithm>

#include <cctype>

using namespace std;

inline
char swap_case(char c) {
  return (isupper(c) ? tolower(c) : toupper(c));
}

int main() {
  cin >> noskipws;

  transform(istream_iterator<char>(cin),
	    istream_iterator<char>(),
	    ostream_iterator<char>(cout),
	    swap_case);
}
 
Zuletzt bearbeitet:
Zurück