C++ Enter Taste VK_RETURN?

3 Antworten

Gar nicht.

Das, was du vor hast, ist mit C++-Bordmitteln nicht möglich. Dafür musst du auf betriebssystemspezifische Bibliotheken / Funktionen zurück greifen.

Da du VK_RETURN erwähnst, gehe ich mal davon aus, dass du Windows nutzt. Wie du dein Vorhaben umsetzen kannst, findest du inkl. Codebeispielen in der MSDN.

Jetzt weißt du, wonach du googeln musst. :)

PS: An deiner Stelle würde ich vorher erst mal die Grundlagen von C / C++ lernen, bevor es weiter geht ...

ist deine "Eingabe" ein String?

Probier mal '\r' oder '\n'!

C++ Nachkommastellen abschneiden?

Hallo liebe Community, ich habe in C++ ein Programm geschrieben welches von dem Benutzer eine Zahleneingabe abfragt und mit diesen Werten dann weiter rechnet und diese dann ausgibt das ganze soll dann auf 5 Nachkommastellen abgeschnitten werden so weit alles kein Problem, jedoch möchte ich das die Zahlen nicht nur so formatiert werden das sie auf 5 Nachkommastellen abgerundet werden sondern auch das wenn als Ausgabe z.B. dann anstatt 5,6 die Zahl 5,60000 ausgegeben wird. Mir ist jedoch nicht klar wie ich das im Programmcode umsetzen kann das die restlichen Nachkommastellen mit 0en aufgefüllt werden sollen.

Mein bisheriger Code sieht so aus :

#include <iostream>
#include <iomanip>
using namespace std;

void wait()
{
    cin.clear();
    cin.ignore(cin.rdbuf()->in_avail());
    cin.get();
}

int main()
{
    cout << endl;

    double RZ1, RZ2;
    cout << "1. reele Zahl = ? ";
    cin >> RZ1;
    cout << endl;
    cout << "2. reele Zahl = ? ";
    cin >> RZ2;
    cout << endl;
    double Summe = RZ1 + RZ2;
    double Differenz = RZ1 - RZ2;
    double Produkt = RZ1 * RZ2;
    double Quotient = RZ1 / RZ2;
    cout << "Summe = " << setprecision(5) << Summe << endl;
    cout << "Differenz = " << setprecision(5) << Differenz << endl;
    cout << "Produkt = " << setprecision(5) << Produkt << endl;
    cout << "Quotient = " << setprecision(5) << Quotient << endl;
    int GZ1, GZ2;



    wait(); // warten auf Enter
    return 0;
}
...zur Frage

C++ Benutzer nach dem Namen fragen?

Sehr geehrte gutefrage-Community, ich habe frisch mit c++ angefangen und kam bis gerade auch ganz gut zu recht. Jetzt habe ich mir aber vorgenommen ein Programm zu schreiben, welches nach den Namen des Benutzers fragt. Diesen Namen soll der Nutzer dann mit y oder f bestätigen. Also: y = richtig und f = false. Ich möchte nun bei false eine Endlosschleife starten, die immer wieder nach dem Namen fragt, wie kann ich das machen?

Weiter unten werde ich meinen bisherigen Idee / bzw. den Code schreiben.

Ich hoffe ihr könnt mir helfen.

Liebe Grüße Christian PS: Ich wollte das erstmal hier fragen, und eventuell nacher dann in einem C++ Forum. :)

Hier der Code:

#include<iostream>

using namespace std

double name, wahl

int main ()

{cout << "Bitte geben Sie ihren Namen ein:" << endl;

cin >> name >> endl, cout << " Also ist dein Name" << name << "?" << endl; cout << " Bestaetige mit y und lehne ab mit f " << endl;

cin << wahl

if (wahl=f) {

cout << " Wie heißt du den? Gib bitte deinen Namen ein. " << endl;

cin >> name

cout << " Also ist dein Name " << name << "?" << endl; cout << " Bestaetige mit y und lehne ab mit f 2 << endl;

cin >> wahl; }

cout << " Hallo " << name << " schön bekanntschaft gemacht zu haben." << endl;

cout << " Leb Wohl " << name << endl;

return 0;

}

...zur Frage

Soll ich hier noch extra eine Leerzeile machen?

Das hier ist in Microsoft Word 2016.

----------------------------------------------------------

Also ich habe einen Text geschrieben und jetzt soll ich vor und nach jedem Absatz eine Leerzeile machen.

Soll ich also nach dem Satz, wo die Leerzeile kommen soll, zweimal die Enter-Taste drücken? (einmal für ein Absatz, einmal für eine Leerzeile)

Oder kann ich auch nach dem Satz, wo eigentlich eine Leerzeile kommen soll, auch nur einmal die Enter-Taste drücken? (Für ein Absatz) Aber dann ist ja weniger Abstand zwischen den Sätzen, als beim einmaligen Drücken der Enter-Taste.

Aber dann habe ich ja gar keine richtige Leerzeile zwischen den Sätzen, sondern nur ein Absatz. Man kann dann auch nicht zwischen den Sätzen schreiben, was bei einer Leerzeile ja aber geht.

Weil wenn man eine Leerzeile hat, heißt es ja dass man dort in die Zeile schreiben kann. Das geht aber nicht wenn ich nur einmal die Enter-Taste drücke, weil ja dann nur ein Absatz da ist, aber keine Leerzeile.

Außerdem soll ich dann noch anschließend in der Registerkarte Absatz (unter Start) das Häckchen rausnehmen bei --> Keinen Abstand zwischen Absätzen gleicher Formatierung einfügen. (Siehe Bild)

Also das Häckchen an der Stelle muss ich auf jeden Fall rausnehmen.

Ich habe noch zwei Bilder eingefügt, wie es aussieht ohne Leerzeile (nur einmal Enter-Taste) und einmal mit Leerzeile zwischen den Sätzen (zweimal Enter-Taste).

Meine Frage ist also jetzt:

Muss ich einmal oder zweimal die Enter-Taste betätigen? Ist mit dem Satz (vor und nach jedem Absatz eine Leerzeile) gemeint, dass man einfach das Häckchen unter Absatz rausnehmen soll? Also erfüllt dass die Bedienung --> (Leerzeile vor und nach Absatz)?

Wenn ja, dann müsste ich ja nur einmal die Enter-Taste betätigen, für den Absatz.

Das zweite Bild ist das, wo ich nur einmal die Enter-Taste gedrückt habe. (Aber das Häckchen unter Start ist immer entfernt).

Ich hoffe es ist zu verstehen, was ich meine.

Danke für die Hilfe.

...zur Frage

C++ String mit samt leerzeichen einlesen!?

Hallo zusammen. Ich möchte jetzt in einem c++ programm einen, bzw. mehrere strings MIT leerzeichen einlesen. Mit cin >> xyz geht es ja definitiv nicht. mit getline(cin, xyz) soll es ja wohl gehen. doch habe ich da folgendes problem: die eingabe für die variable, also die mit getline aufgerufen wird WIRD EINFACH ÜBERSPRUNGEN!!! Hier der Code. Bitte helft mir danke schonmal

cout << "Welcome to C++ Filecompiler using G++ !\nThis app is proudly presented by Armin Linzbauer, Copyright 2012." << endl;
cout << "\nFirst, this app is going to collect some basic information...\n(Write paths ALWAYS in quotationmarks!!!\n" << endl;

cout << "\nName of source file, type 0 for standard (\"main.cpp\") -" << "\nName: ";
cin >> sourceName;

cout << "Source path (must end with a slash), type 0 for standard (this directory) -" << "\nPath: ";
getline(cin, sourcePath);
//cin >> sourcePath;

cout << "Name target file here, type 0 for standard (\"app\") -" << "\nName: ";
cin >> targetName;

cout << "Target path (must end with a slash), type 0 for standard (this directory) -" << "\nPath: ";
getline(cin, targetPath);
//cin >> targetPath;

cout << sourceName << "; " << sourcePath << "; " << targetName << "; " << targetPath << endl;
cout << matchedSource << endl;
cout << matchedTarget[1] << endl;
cout << matchedTarget[0] << endl;
cout << matchedSrcTgt << endl;

sorry für die &lt und &gt... ich weiß net wie ich die wegbekomme hier im editor!

...zur Frage

C++ Char in String umwandeln?

Hallo liebe Community, ich habe folgendes Problem und zwar soll ich ein Programm schreiben, dass 2 Zeichen und 2 Zeichenketten vom Benutzer abfragt und diese dann verkettet ausgibt.

Ich bekomme es aber nicht hin die 2 Zeichen in einen String um zu wandeln habe es bereits mit sstream versucht, der mir bei der Ausgabe aber einfach nur ein whitespace ausgibt, die einzige andere Methode die mir in den Kopf kommt ist ein cast.

Bisheriger Code :

char Z1, Z2;
string ZK1, ZK2, ZK3, ZK4;
cout << "1. Zeichen = ? ";
cin >> Z1;
cout << "2. Zeichen = ? ";
cin >> Z2;
cout << endl;
cout << "1. Zeichenkette = ? ";
cin >> ZK1;
cout << "2. Zeichenkette = ? ";
cin >> ZK2;
cout << endl;
cout << "Verkettete Zeichen = " << Z1 + Z2 << endl;
ZK4 = ZK1 + ZK2;
cout << "Verkettete Zeichen und Zeichenketten = " << /*ZK3*/ + ZK4 << endl;

Meine Frage ist nun wie ich einen char in einen String umwandeln kann?

...zur Frage

C++ Wie kann ich den Benutzter eine Rechenart auswählen lassen. (Konsolen Anwendung)

Also ich bin dabei C++ zu lernen und ich habe schon selber versucht das dass Problem mit einer char Variable zu lösen und dann mehrere if abfragen zu erstellen aber dass funktioniert nicht ganz, außerdem ist es eine Konsolen Anwendung.Kann mir jemand helfen ?

#include <iostream>

using namespace std;

int main(){
char Rechenart;
int Summe1, Summe2, Ergebnis;

cout << "Mit welcher Rechenart wollen sie Rechnen(Multiplikation*)(Divison/)(Addition+)(Subtraktion-)";
cin >> Rechenart;
cout << "Benutzereingabe:";
cin  >> Summe1;
cout << "Benutzereingabe:";
cin  >> Summe2;

Ergebnis = Summe1 * Summe2;

getchar();

std::cout << Summe1 << Rechenart << Summe2
    << " = "
    << Ergebnis
    << std::endl;

if (true)
{
 
}

else
{

}

getchar();
return 0;
}
...zur Frage

Was möchtest Du wissen?