C++ problem z funkcją i goto.
Ostatnio zmodyfikowano 2010-01-13 21:35
Bartaz Temat założony przez niniejszego użytkownika |
C++ problem z funkcją i goto. » 2010-01-13 20:47:35 Witam mam np taki kod: #include <iostream> using namespace std; void funkcja() { cout << "Napis" << endl; goto daleko; }; int main() { daleko: system( "PAUSE" ); return( 0 ); }
I nie działa mi tu funkca goto ,i tu pytanie czy da się to jakoś zastąpić żeby działało? |
|
TheLukon |
» 2010-01-13 20:51:25 Nie jestem pewien ale musisz zdefiniowac "daleko" |
|
chesterr |
» 2010-01-13 20:55:54 hehe... nie wiedzialem ze mozna sie tak usmiac patrzac na czyjs kod ;p |
|
malan |
» 2010-01-13 20:56:08 #include <iostream> using namespace std; void funkcja( void ) { cout << "Napis" << endl; return; }; int main() { funkcja(); system( "PAUSE" ); return( 0 ); } Twój kod nie działa, bo " Etykieta, do której przeskakujemy musi leżeć w obowiązującym w danej chwili tzw. zakresie ważności". |
|
wojos |
» 2010-01-13 21:10:07 Po pierwsze instrukcja goto jest niemalże nie zakazana :) radziłbym Ci się do niej nie przyzwyczajać ponieważ bardzo źle wpływa na czytelność kodu, pół biedy w takich małych programach ale jak się weźmiesz za coś większego to strach się bać jak ten kod by wyglądał :P Tak czy owak po pierwsze po co Ci tu instrukcja goto? a po drugie to co powiedział kolega wyżej etykieta musi być w tym samym bloku co instrukcja goto odwołująca się do tej etykiety. Instrukcja ta może się sprawdzić w takich tylko przypadkach: #include <iostream> #include <conio.h> using namespace std;
int main() { int costam = 5; goto etykieta; costam = 10; etykieta: cout << "costam = " << costam << endl; getch(); return( 0 ); }
Aczkolwiek jak widać powyższy kod jest totalnie bez sensu... Nigdy nie używałem instrukcji goto i Tobie też bym nie radził, nie ma co... |
|
chesterr |
» 2010-01-13 21:29:17 A ja bym radzil, tylko z glowa. Co prawda rzadko ale sa sytuacje kiedy instrukcja skoku sie przydaje np. w zagniezdzonych petlach kiedy chcesz sie z nich szybko wydostac.
Kiedys Iname dal mi na ten temat ciekawy artykul. Nawet chyba sam byl jego autorem ;p ale nie moge sie doszukac linka. |
|
Elaine |
» 2010-01-13 21:35:29 |
|
« 1 » |