Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

hallo erstmal

wie kann man den char speicher erhöhen, sodass z.B. 10 buchstaben erkannt werden.

Normalerweise kann man ja nur 8 bit = 1 buchstaben eingeben

gibt es dafür noch eien zusätzlichen befehl?

Geschrieben

Ein char ist immer nur ein einzelnes Zeichen. Wenn du eine Zeichenkette speichern möchtest kannst du das zum Beispiel in einem Array von Chars machen.

z.B. char Name[32] erzeugt dir ein Array für 32 Zeichen. Allerdings beginnt der Index bei 0 so dass du auf die Zeichen Name[0] bis Name[31] zugreifen kannst.

Geschrieben

und Name[31] muss den Wert 0 haben (nicht das Zeichen '0')

also entweder Name[31] = 0; oder Name[31] = '\0';

Sonst schießt du bei (fast) jeder Zeichenkettenoperation über das Array hinaus...

Geschrieben
und Name[31] muss den Wert 0 haben (nicht das Zeichen '0')

also entweder Name[31] = 0; oder Name[31] = '\0';

Sonst schießt du bei (fast) jeder Zeichenkettenoperation über das Array hinaus...

Nein, nach dem letzten Zeichen der Zeichenkette muss eine binäre 0 kommen. Das heißt wenn da zum Beispiel Martin drin steht steht an 7. Stelle die 0 um das Ende zu markieren.

Da das aber sowieso von fast allen String einlese Funktionen zu gemacht wird ist das erstmal nicht so wichtig für den Autor.

Geschrieben

hab vor 2-3 Tagen mit C++ angefangen.

Ich habe ein Programm geschrieben, dass nach Eingabe des Durchmessers bzw des Radius, den Flächeninhalt, Umfang etc. eines Kreises berechnet.

Das Programm fragt, was ich angeben werde. Durchmesser oder Radius.

Und ich möchte halt ddie Wörter ganz ausschreiben können.

Wenn ich den Speicher von char erweiter, dann sagt das Programm, dass ich von Int nach char konvertieren soll..

Geschrieben
Hi,

Code ist immer hilfreich bei sowas. C++ bietet übrigens auch elegantere Möglichkeiten, als mit char und Zeigern zu hantieren.

ist nicht ein profi code aber egal^^


#include <iostream.h>

int main()

{


  char wahl;

  double radius, durchmesser;

  double A, U;

  const double pi = 3.1415926535897932384626433832795;  


  cout<<"Geben Sie den Durchmesser oder den Radius ein!"<<endl;

  cout<<"Geben Sie nur den Anfangsbuchstaben ein! ";


  cin>>wahl;



  if (wahl == 'D')

  { 

     cout<<"\nDurchmesser = ";

     cin>>durchmesser;


     radius = durchmesser/2;


     A = radius * radius * pi;

     U = durchmesser * pi;


     cout<<"Der Flaecheninhalt des Kreises beträgt = "<<A<<endl;

     cout<<"Der Umfang des Kreises beträgt = "<<U<<endl<<endl; 

  }



  if(wahl == 'R')

  {

     cout<<"\nRadius = ";

     cin>>radius;


     A = radius * radius * pi;

     U = radius * 2 * pi;

     cout<<"Der Flächeninhalt des Kreises beträgt = "<<A<<endl;

     cout<<"Der Umfang des Kreises beträgt = "<<U<<endl<<endl; 

  }



    system("pause");

}


Geschrieben

Nimm statt char std::string. Dafür brauchst du noch #include <string>

iostreeam.h ist übrigens falsch, das .h muss weg. Dafür liegen cin und cout im Namespace std, d.h. entweder schreibst du jeweils std:: vor jedes cin oder cout, oder du verwendest eine using-Direktive:

using namespace std;

(vor deiner main-Funktion)

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...