Antwort schreiben

Online-tutorials.net Forenübersicht/C++ / C#/compilierte exe schließt sich sofort wieder

Antwort schreiben
Username: Username: Passwort: Password vergessen?
Beitragssymbol:   Kein Symbol    
Funktionen:
Weitere Smiley's
                       
Lachend attention cry keep cool question happy laugh tongue Lachend attention cry keep cool question happy laugh tongue
Betreff:
Keywords: (Stichworte, die das Thema beschreiben)
Beitrag:
Optionen: E-Mail Benachrichtigung
BBCode benutzen
Datei anhängen: Erlaubt: rar zip pdf txt gif bmp jpg jpeg png

Bearbeitungshilfe...
Schauen Sie am besten in der wikipedia nach, falls Sie sich über einen Begriff nicht im klaren sind.

Mit einem klick auf Send bestätigen Sie, das Sie die Nutzungsbedingungen gelesen haben, und das Sie damit einverstanden sind.

Themenübersicht
(absteigend nach Datum sortiert)
Author Beitrag
Simon HechtJa, das hatte ich vergessen zu erwähnen, dass ist im Tutorial schon ausgebessert. int const z würde keinen sinn machen, da die Variable dann nicht benutzt werden könnte.

Das mit der konstante NULL zuweisen geht natürlich. Nein, bei 2. gibt es keinen unterschied.

spawnda war Simon wohl ein bisschen schneller als ich mit der antwort ;)


aber mir kommts grad extrem komisch vor das folgende zeile nicht geht:

int const z;

ich weiß sie ist eigentlich sinnlos, nur ich mein mal irgendwo gelesen zu haben man könnte anstatt zb: if(variableX != NULL) auch einer constanten NULL zuweisen und dann schreiben: if(variableX != constVariableNULL)
1)geht das nicht mehr oder ging das jemals?

2)und gibts eigentlich einen unterschied ob man schreibt: const int x = 5; und int const x = 5; ?

Simon HechtHallo,

du hast einige ; vergessen. In der Zeile mit int a = 5 und int d = 0.

In der Zeile mit const e = d; und const int b = a; hast du : anstelle von ; gemacht.

Und bei const e hast du den Variablentyp int vergessen, das war mein Fehler.

mfg. Simon

da-Bakkaso weit so gut die fehler sind weg aber es geht trozdem weiter -.-

jetzt steht da drücken sie enter um das programm zu schließen!

wenn ich enter drücke komme ich eine zeile weiter runter aber das programm beendet sich nicht :-(

Bakka

ps: wenn ich jetzt nur noch wüste was jabber und Debian. ^^


ANGANG:

hi nochmal,

hab noch ein problem. entweder is mach die fehler oder im tut stimmt was nich.

hab die lektion Konstante abgeschrieben.

daraufhin kamm ein kompilier fehler ( 4 stück )

hier mein code:

#include <iostream>

using namespace std;

int main()
{
int a = 5

const int c = 5; //erster fehler war hier 4 sind es insgesammt -.-
const int x = 5*7;

int d = 0

cin >> d;

const e = d:

const int b = a:

int const z;

system("pause");

return 0;

}

Simon HechtSorry, ich mache gerade lauter Anfängerfehler ;)

>> und << gehören vertauscht.

Ich erkläre gerade jemand per jabber die Debian installation.

da-Bakkaso spät noch wach. :-)
da hab ich ja noch mal glück gehabt.

nein leider funkts nich aber der feler in der int zeile is weg.

mein code:

int a = 0;
cout>>"Drucken sie Enter um das Programm zu beenden!"; // diesmal is der fehler hier :-(
cin<<a;

gruß
Bakka

Simon HechtHallo,

sorry da gehört in die int zeile einfach int a = 0; Mein Fehler. ;) Passt jetzt alles?

mfg. Simon

da-BakkaHallo Simon,

danke für die schnelle antwort.
hab den code gleich mal ausprobiert aber bekommen ich einen fehler beim Kompilieren.

hier der code.

#include <iostream>

using namespace std;

int main()
{
int z,x,y,Test;

cout << "Bitte geben Sie eine Zahl ein: " << endl;

cin >> z;

cout << endl << endl << "Bitte geben Sie eine zweite Zahl ein: " << endl;

cin >> x;

y = Test = ((z + x) * x) + 5;

cout << "y hat den Wert: " << y << endl;

int:"a"; // ich glaube hier ist der fehler
cout>>"Drucken sie Enter um das Programm zu beenden!";
cin<<a;

return 0;
}

Vielleicht kannst du es ja mal kompilieren und mir sagen was falsch ist.

Mit folgendem code gehts.

system("pause");

Aber mit der taste drücken is eleganter.

möglicherweiße spielt das programm ne rolle. ich benutze DEV-C++ 4.9.9.2

gruß
Bakka

Simon HechtHallo da-Bakka,

im ersten Code gibt es die Variablen i und z. i habe ich auf 3 gesetz. z wurde allerdings noch nicht gesetzt. Eine Variable wird normalerweise mit irgendeinem unbestimmten Wert initialisiert, genau das soll das Beispiel demonstrieren. Du hast 23, auf einem anderen System könnte es 50 sein.

Das mit dem schließen ist merkwürdig, das sollte eigentlich nicht passieren. Du kannst zur Not auch system("pause"); benutzen. Ansonsten kannst du auch folgendes am Schluss vor return 0; hinzufügen:

[code]
int a = 0;
cout>>"Drücken sie Enter um das Programm zu beenden!";
cin<<a;
[/code]

Das erwartet eine Eingabe und verhindert so das schließen des Programms.

Gruß,
Simon

[edit] int Zeile ausgebessert

da-BakkaHallo zusammen,
ich habe mit dem c++ Tutorial angefangen und hab gleich mal ein problem :(.
Vorab ich hatte gleich mal probleme mit der hello_world.exe, denn diese war immer nur für weniger als eine sekunde sichtbar.
Dies habe ich mit folgendem Code behoben.

cin.clear();
cin.ignore(cin.rdbuf()->in_avail());
cin.get();

So weit so gut dachte ich, hab weitergelesen und bin schließlich bis zu denn Variablen gekommen. Dort hab ich mir den
code abgeschriben und compiliert.

das sollte der Ausgabe wert sein.
Der Wert der Variablen: 3/-858993460

meiner war:
Der Wert der Variablen: 3/23

wieso weicht mein wert ab ?

hier ist der benutzet code:

#include <iostream>

using namespace std;

int main()
{
int z;
int i = 3;

cout << "Der Wert der Variablen: " << i << "/" << z << endl;


cin.clear();
cin.ignore(cin.rdbuf()->in_avail());
cin.get();

return 0;
}

daraufhin dachte ich mir nich viel und habe einfach weitergemacht doch kurz darauf im Abschnitt Operatoren ein neues problem.

Wieder den code abgeschrieben und compiliert.

Die exe startet und will das ich eine zahl eingebe, dies tuhe ich natürlich und ein zweites mal auch. Nun sollte ja der y wert angezeit werden, doch komischerweiße schließt sich die exe weider wie bei der hello_world.exe nur das diesmal der folgende code mit eingefügt war.

cin.clear();
cin.ignore(cin.rdbuf()->in_avail());
cin.get();

habe es auch mit folgendem versucht um das schließen zu verhindern.

std::getchar();

doch leider hat sich nichts verändert.

hier ist noch der gesamte code für die von mir erstellte exe.

#include <iostream>

using namespace std;

int main()
{
int z,x,y,Test;

cout << "Bitte geben Sie eine Zahl ein: " << endl;

cin >> z;

cout << endl << endl << "Bitte geben Sie eine zweite Zahl ein: " << endl;

cin >> x;

y = Test = ((z + x) * x) + 5;

cout << "y hat den Wert: " << y << endl;

cin.clear();
cin.ignore(cin.rdbuf()->in_avail());
cin.get();

return 0;
}


ich denke mal unter euch Profis ist sicher einer der mir helfen kann ;-)

danke im voraus

Bakka