C - an bestimmte Stelle im Programm zurückspringen

Währungsrechner - (PC, Programm, Sprung)

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Dafür gibts ganz einfach den goto-Befehl :) Beispiel:

marke:;

cout << "Endlosschleife\n";

goto marke;

"Marke" kannst du sinnvoll benennen, und halt auch mehrere anlegen. Bedenke jedoch, dass gute Programmierer immer versuchen, goto zu vermeiden! Bei kleinen Programmen ists ok, aber wenn man es übertreibt enthält man sogenannten "Spaghetti-Code": man verliert sehr schnell den Überblick durch dieses ganze hin- und hergespringe.

aber ist cout nicht von c++? und wo genau soll ich das einfügen?

0
@nbb133

Hab überlesen dass es sich um C und nicht um C++ handelt, jedoch kennt C goto genau so gut ;) funktioniert also trotzdem.

Übrigens hoffe ich nicht, dass du C lernst um später C++ zu lernen. Es ist ein Irrtum, dass es den Einstieg in C++ erleichtert. Nur so als Kommentar.

0
@eisMoewe

Naja doch das wollte ich xD. da ich am anfang bei c++ ziemlich wenig verstanden habe. naja egal. vielleicht werd ich auch nach C was anderes machen.

also muss ich nun goto auswahl; vor dem if eingeben? und dann am ende der ganzen if anweisungen das gleiche?

0
@nbb133

Nicht ganz. Du setzt eine Marke, die du später anspringen kannst, und zwar so:

auswahl:;

Also Name der Marke (immer komplett klein geschrieben afaik), gefolgt von einem Doppelpunkt und einem Semikolon.

Jetzt kannst du von überall aus diese Marke anspringen, und zwar so:

goto auswahl;

Dann landest du wieder dort, wo "auswahl:;" steht. Beachte, dass dies leicht eine Endlosschleife erzeugen kann ;)

Zum Thema Umstieg: Programmierer, die von C auf C++ umsteigen, haben es tatsächlich schwieriger (!), als welche, die neu mit C++ anfangen, da C++ sich inzwischen so weit von C entfernt hat, dass die Umsteiger sich sehr umgewöhnen müssen und viele Gewöhnungsfehler machen, die sie langsam umlernen müssen. Wenn du auf C++ hinaus willst, solltest du also direkt damit anfangen :)

0
@eisMoewe

vielen dank es funktioniert :).

ach c++ ist zu kompliziert irgendwie^^. aber mal sehen. was wär denn sinnvoller zu lernen? C oder C++?

(wo setzt man denn hier den stern für beste antwort xD? kenne mich noch nicht so aus mit dem neuen^^)

0
@nbb133

Naja, kommt drauf an was du damit machen willst. Wenn du mal was richtig großes programmieren willst, stößt du mit C halt viel schneller auf Grenzen. C++ ist wesentlich weiter entwickelt, aber auch - wie du bereits sagtest - viel komplexer und anfänger-unfreundlicher.

Wenn du nur kleine Programme und Tools programmieren willst, ist C ganz ok, sowas wie Perl oder Delphi eignet sich dafür auch gut. Für große, komplexe, professionellere Programme wäre C++ die bessere Wahl, allerdings brauchst du dafür viel Zeit und Geduld. Musst halt entscheiden, wo deine Prioritäten liegen.

Der "beste Antwort"-Link ist direkt unter der jeweilige Antwort ;) lautet "Als hilfreichste Antwort auszeichnen" und hat daneben so ein goldenes Fähnchen.

0

goto abc ;   // Sprung

abc:              // Label



Es gibt in C auch die Möglichkeit mit einem "goto"  zu einem Label zu springen. Da rümpfen die meisten Softwerker aber die Nase, es ist also verpönt. Ich benutze das selbst auch nicht. Wie das geht findest Du z.B. hier:



<a href="http://msdn.microsoft.com/en-us/library/b34dt9cd%28v=vs.80%29.aspx" target="_blank">http://msdn.microsoft.com/en-us/library/b34dt9cd%28v=vs.80%29.aspx</a>



Besser ist es eine entsprechende Schleife aufzubauen und vielleicht mit einem "break" raus zu springen.

 

Überweisung Schweizer Franken auf Deutsches Konto?

Ich habe mir Konzertticktes für ein Konzert in der Schweiz bestellt, was ich auch über ein Schweizer Ticketportal vorgenommen habe. Als Zahlungsart habe ich Überweisung ausgewählt. Nach Abschluss der Bestellung wurde mir ein Deutsches Konto (Commerzbank Frankfurt) zur Überweisung angezeigt. Die Währung war alledings in Schweizer Franken ausgelegt. Da ich nicht wusste wie ich das überweisen soll, habe ich dann den Betrag der Schweizer Franken über einen Währungsrechner in Euro umgerechnet und dann diesen Betrag überwiesen. Ich weiss jetzt aber nicht ob das so richtig ist. Werde ich die Tickets trotzdem erhalten? Wie hätte ich es ansonsten überweisen können?

...zur Frage

switch quanity not an integer, weiß jemand was diese Fehlermeldung zu bedeuten hat?

#include <stdio.h>
float eur, erg;
char waehrung[20];
int z;

printf("Bitte geben Sie einen Wert in EUR ein.\n");
scanf("%f", &amp;eur);

if (eur&gt;0)
    
    {
        printf("\"D\" fuer Dollar, \"P\" fuer British Pound\n");    
        scanf("%c", &amp;waehrung); 
    
        switch(waehrung)&nbsp;
            {
            case 'D': printf("%f", erg=eur*1.08770); break;
            case 'P': printf("%f", erg=eur*0.719808); break;
            default: printf("Keine gueltige Waehrung!\n"); break;
            }
                
    }
    
    else
        
    {   printf("Eingabewert ungueltig!\n");
    }
    

return 0;

system("PAUSE");

}

Mein Programm gibt mir eine Fehlermeldung an, ich versteh aber nicht warum. Weiß jemand mehr?

...zur Frage

C programmieren - char* x und char* p[10]?

Hallo,

mir ist der Unterschied bzw. die Bedeutung von den oben genannten Ausdrücken (char* x und char* p[10]) noch nicht ganz klar:

char* x bedeutet doch, dass ich einen Zeiger auf den Anfang einer Zeichenkette haber - oder?

und char* p[10] bedeutet doch, dass ich einen Zeiger auf ein Feld mit 10 unterschiedlichen Zeichenketten habe oder?

Vielleicht kann mir jemand das nochmal genau erklären. Vielen Dank.

...zur Frage

Adobe Photoshop - den Dollar-Preis zahlen?

Das Programm Photoshop kann man bei adobe ja mittlerweile billiger ergattern, als im Einzeldownload, warum auch immer.

im Einzelnen kostet das rund 25 euro. im Fotografen-Download nur 12 ?

Erste Frage : muss man für den Fotografen Download als Fotograf gemeldet sein oder kann das auch ein normaler privatverbraucher nehmen.

++ man kann die Währung bei der Zahlung selbst wählen. in Dollar ist es im Gesamten aber viel billiger. - kann ich aus Deutschland aus auch mit Dollar zahlen ?

...zur Frage

Überweisung in andere Länder mit anderer Währung...

Wenn ich Geld auf ein ausländisches Konto überweise, z.B. etwas bestelle und die Währung anders ist (z.B. US-Dollar / Dänische Kronen), wird der Betrag automatisch umgerechnet oder muss ich das mit meiner Bank klären oder geht das von der Bank aus die das Geld empfängt? Danke für jede Antwort :)

...zur Frage

Kann in diesem Programm die Rede von undefiniertem Verhalten sein C++?

Hier ist mein Code:

#include <iostream>
using namespace std;
int* pReturn() 
{   
int zahl = 10;   
int* pzahl = &zahl;   
return pzahl; 
}
int main() 
{   
cout << "Hello world!" << endl;   
int* pointer = pReturn();   
*pointer = 15;   
cout << *pointer;   
return 0; 
}

Also ich rufe ganz simpel eine Funktion auf und lasse sie einen Pointer auf eine Variable zurückgeben, die in der Funktion deklariert und initialisiert wird. Sollte die Variable aber nach dem reurn Befehl nicht gelöscht, bzw. freigegeben werden, sodass der Pointer auf eine Variable zeigt, die sich jederzeit durch andere Programme verändern könnte oder merkt das der Compiler schon von vorne rein und löscht diese Variable nicht? Aufjedenfall kann ich auch nach dem return Befehl in der Funktion die Variable per Pointer modifizieren und ausgeben. Ich versteh das irgendwie nicht..

...zur Frage

Was möchtest Du wissen?