"go to" ceessä

Mikä vastaa basicin "go to"-käskyä c :ssa? Siis jos siihen ei ole suoraa vastinetta niin miten se toteutetaan?
10825
Äänestä

Muut lukivat myös

Vastaukset 10

Vanhimmat

no oiskohan goto?

tosin c :ssa et tee sillä juuri mitään. jos oot siirtymässä lelubasicista c :aan niin unohda suosiolla koko goto!

Äänestä
  • Aloittaja

    Ilman väliähän se on okeestaan basicissaki. En oikeestaan oo siirtymässä koska en oo juurikaan käyttäny basiccia. Oon nyt ruennu käyttämään ceetä niin mietitytti tuo, ja mietityttää edelleen. Minne mä sillä gotolla meen? Siis kun basicissa kirjotettiin siihen gotoon rivinumero niin miten ceessä?

    Äänestä

  • vitut unohda, gotoa pitääki käyttää, vittu joka paikkaan pistää. paree se ku while for runkut vittu, kuka gotoo ei käytä/osaa on aika käsi vittu johonki wilee tyytyy imekää ny jo vittu gotoa vittu esimerkki

    int main()=

    {
    alku:printf("hiasta vitt")
    goto alku;
    \\}
    nii repikää siitä persnaamat

    Äänestä

  • perse kirjoitti:

    vitut unohda, gotoa pitääki käyttää, vittu joka paikkaan pistää. paree se ku while for runkut vittu, kuka gotoo ei käytä/osaa on aika käsi vittu johonki wilee tyytyy imekää ny jo vittu gotoa vittu esimerkki

    int main()=

    {
    alku:printf("hiasta vitt")
    goto alku;
    \\}
    nii repikää siitä persnaamat

    char* menossa_hoitoon(bool KooEe) //?
    {
    if(!KooEe)
    goto hoito;

    hoito:
    return("terve potilas\0");
    }

    Äänestä

  • UPDATE_4362142 kirjoitti:

    Ilman väliähän se on okeestaan basicissaki. En oikeestaan oo siirtymässä koska en oo juurikaan käyttäny basiccia. Oon nyt ruennu käyttämään ceetä niin mietitytti tuo, ja mietityttää edelleen. Minne mä sillä gotolla meen? Siis kun basicissa kirjotettiin siihen gotoon rivinumero niin miten ceessä?

    Onkos Visual Basic / Visual Basic for Applications / Visual Basic Script -kielissä vieläkään mitään järkevää tapaa ottaa kiinni "poikkeuksia"? Ainakin aikanaan tuohon ei ollut mitään muuta rakennetta käytössä kuin goto. "On Error Goto _____". (Eihän tuo tietenkään ole mitään oikeaa poikkeuksien käsittelyä.)

    Äänestä

  • Vaikka goton viljelemistä kannattaakin välttää on se joissain tilanteissa aivan kätevä. Esmes jos funktion loppuun sijoitetaan mahdollinen virhetilanteiden käsittely on kätevä hypätä gotolla sinne virhetilanteessa, tyyliin:

    jotain funktio(jotain)
    {
    ...tee jotain...
    if (jokin virhe)
    goto Error;
    ...tee lisää...
    if (jokin toinen virhe)
    goto Error;
    ...lisää

    return 0; // Ok

    Error:
    ...käsittele virhe...
    return error;
    }

    Esmes monitasoisista silmukoista voi olla hankalaa/kömpelöä päästä muuten pois.

    J.

    Äänestä

Aloittaja

siis laitan goton perään jonkun muuttujan? Entäs jos se muuttuja esiintyy useassa paikassa?

Äänestä
  • et sä mitään muuttujia laita.
    kirjotat ohjelmaas siihen kohtaan minne haluat hypätä
    hyppypaikka:

    ja sitten ite hyppy
    goto hyppypaikka;

    Äänestä

  • int kerro_arvo();

    void main()//c:ssä ei tarvita gota oikestaan
    { //mihinkään.

    alku: // tähän voi palata gotolla mutta yleensä
    // sitä ei tarvitse mihinkään
    int a = kerro_arvo();
    int b=a;
    printf("a =%d b =%d",a,b);
    c = kerro_arvo();
    printf("c =%d",c);
    if(a!=b)goto alku;
    }
    int kerro_arvo()
    {
    return(24);
    }
    /* elikkä siis unohda ne rivinumerot ja sensemmoset. kerro_arvo on ohjelman pätkä joka suorittaa tehtävän ja sitä kutsutaan nimellä eikä esim. rivinumerolla.*/

    Äänestä

  • Aloittaja

    puusilima_ kirjoitti:

    int kerro_arvo();

    void main()//c:ssä ei tarvita gota oikestaan
    { //mihinkään.

    alku: // tähän voi palata gotolla mutta yleensä
    // sitä ei tarvitse mihinkään
    int a = kerro_arvo();
    int b=a;
    printf("a =%d b =%d",a,b);
    c = kerro_arvo();
    printf("c =%d",c);
    if(a!=b)goto alku;
    }
    int kerro_arvo()
    {
    return(24);
    }
    /* elikkä siis unohda ne rivinumerot ja sensemmoset. kerro_arvo on ohjelman pätkä joka suorittaa tehtävän ja sitä kutsutaan nimellä eikä esim. rivinumerolla.*/

    kiitos paljo

    Äänestä

Kommentoi aloitusta


UPDATE_4362142 kirjoitti:

Mikä vastaa basicin "go to"-käskyä c :ssa? Siis jos siihen ei ole suoraa vastinetta niin miten se toteutetaan?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu