Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > C/C++
You last visited: Today at 02:51

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Return Point

Discussion on Return Point within the C/C++ forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Feb 2010
Posts: 64
Received Thanks: 3
Return Point

Also, ich bin ein ziemlicher Anfänger was C++ angeht und wollte deshalb fragen, wie man Punkt machen kann, zu denen man dann mit return zurück springt.
Also mein Beispielprojekt sieht jetzt einfach mal so aus:
int main () {
int c;
cout << "Abfrage:";
cin >> c;


if (c == 1) {
cout << "Krass";

}
if (c == 5) {
cout << "omfg";
c = 1;
return main ();
}

return 0;
}

Wenn ich dieses Programm benutze und zuerst 5 eingebe, dann soll er danach zu 1 springen, und ja ich weiß ich könnte den Quellcode von 1 einfach unten dran hängen, aber mir geht es hier ums Prinzip.
Ich brauche einen Punkt zwischen c >> c und if (c ==1) zu dem ich hinspringen kann, wenn ich ein Unterprogramm dafür öffne geht ja der Wert c verloren und wenn ich zu main springe fragt er mich halt wieder nach der Eingabe für c.

Vielen Dank für Eure Hilfe
wasgehtso is offline  
Old 01/04/2013, 15:36   #2


 
MrSm!th's Avatar
 
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,904
Received Thanks: 25,394
Was du da vorhast ist ziemlich gefährlich und nicht wirklich sinnvoll. Was willst du denn genau erreichen?
Sprünge lassen sich mit goto realisieren, auch wenn es ein schlechter Stil ist und sinnlose, wirre Sprünge vermieden werden sollten, da sie das Programm unlesbarer machen.
MrSm!th is offline  
Old 01/04/2013, 16:03   #3
 
elite*gold: 0
Join Date: Feb 2010
Posts: 64
Received Thanks: 3
und wie kann ich sagen wohin ich springen will, also in dem fall "goto ?"
wasgehtso is offline  
Old 01/04/2013, 17:00   #4
 
elite*gold: 5
Join Date: Sep 2006
Posts: 385
Received Thanks: 218
Nope, gleich wieder vergessen. Was du hier vor hast ist ne ganz üble Geschichte, dafür nutzt man kein goto! Ich denke was du suchst sind eher Schleifen.

Code:
#include <iostream>

int main()
{
    const int validInput = 1; //magic numbers vermeiden
    int userInput = 0; //"c" ist ein absolut schlechter Variablenname
    
    do
    {
        std::cout << "Bitte geben sie eine Zahl ein: ";
        std::cin >> userInput;
    } while(userInput != validInput); //der Teil in den {} wird so lange wiederholt wie die eingegebene Zahl ungleich der validen Zahl (1) ist
    
    std::cout << "Sie haben '" << userInput << "' eingegeben!";
    return 0;
}
Nightblizard is offline  
Thanks
1 User
Old 01/05/2013, 12:04   #5
 
TIMΣ™'s Avatar
 
elite*gold: 23
Join Date: Oct 2010
Posts: 2,986
Received Thanks: 357
Also an deiner Stelle würde ich den Stil von Nightblizards Code übernehmen, den das was du machen möchtest ist ziemlich blöd. Selbst goto ist eine schlechte Auswahl, dass kannste gerne in Batches verwenden ^^. Nunja, trotzdem ein Beispiel wie das mit goto funktionieren würde.

Code:
#include <iostream>

int main()
{

    int eingabe;

    SpringenMitGoto:; // Hier wird hingesprungen

    std::cout << "Bitte geben Sie eine Zahl ein: ";
    std::cin >> eingabe;
    std::cout << std::endl;

    if(eingabe == 3)
    {
        std::cout << "Treffer mit der Zahl " << eingabe << std::endl;
    }
    else if(eingabe == 5)
    {
        std::cout << "Du darfst es noch einmal versuchen" << std::endl;
        goto SpringenMitGoto; // Hier sagst du ihm, dass er dahin springen soll, wo SpringenMitGoto definiert wurde
    }
    else
    {
        std::cout << "Du hast keinen Treffer gelandet" << std::endl;
    }

    return 0;

}
TIMΣ™ is offline  
Old 01/05/2013, 12:51   #6
 
elite*gold: 0
Join Date: Feb 2010
Posts: 64
Received Thanks: 3
Quote:
Originally Posted by Nightblizard View Post
Nope, gleich wieder vergessen. Was du hier vor hast ist ne ganz üble Geschichte, dafür nutzt man kein goto! Ich denke was du suchst sind eher Schleifen.

Code:
#include <iostream>

int main()
{
    const int validInput = 1; //magic numbers vermeiden
    int userInput = 0; //"c" ist ein absolut schlechter Variablenname
    
    do
    {
        std::cout << "Bitte geben sie eine Zahl ein: ";
        std::cin >> userInput;
    } while(userInput != validInput); //der Teil in den {} wird so lange wiederholt wie die eingegebene Zahl ungleich der validen Zahl (1) ist
    
    std::cout << "Sie haben '" << userInput << "' eingegeben!";
    return 0;
}
Vielen Dank ich brauchte das für nur eine Situation und das Projekt war halt nur ein Beispiel, aber danke für die Antwort du hast fragen beantwortet die ich noch garnicht gestellt habe aber das mit dem while ist ne ganz gute idee, hab ich garnicht dran gedacht manchmal steh ich halt echt neben der spur
wasgehtso is offline  
Reply


Similar Threads Similar Threads
[FS] FREESTYLE street Basketball 3 Point, Rebound, and 2 point Hack
06/11/2012 - General Gaming Discussion - 133 Replies
My cousin was just hired as product manager for levelup philippines, he says the team for freestyle philippines knows all the available hacks and cheats, including the: 1. 3 point hack 2. rebound hack 3. and he even told me theres a 2 point hack they need to know these hacks for them to solve it. i will share these hacks and cheats in a little while.
[HELP]Setting Return Point
04/02/2011 - Dekaron Private Server - 1 Replies
Hey guys, you know on loa and other starting towns also parca. There are certin npcs that you can go to , to set your return location to that map. I was wondering if anyone know how to do that for ardeca. I've try somethings didnt work. Is it in maplist? . im not sure , help plz. thanks a lot



All times are GMT +2. The time now is 02:51.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.