Newsgroup: it.comp.lang.c
Titolo: Goto in C

Hi to everyone !
I'm a newbie and I have a problem with a math program , I don't know how to
do a goto in C , is there any
instruction to do it ??
For anyone that doesn't know what Goto does , it just send the control to
another source line , for example in Basic :
Print "I'm Francesco"
goto good:
Print "I'm Frank"
good:
Print "I'm Checco"
this code will display on the screen I'm Francesco and I'm Checco , but not
I'm Frank ..... Can you understand? please help me ... it's important ....
reply to both to newsgroup and 
fma...@freemail.it
 , Thank a lot .....
----------------------------------------------------------------------------
-----------------------------------------------------------------------
Ciao a tutti !
Sono un principiante e ho un problema con un programma di matematica , non
so come scrivere GoTo in C, c'è un istruzione per farlo ??
Per chiunque che non sappia cosa fa GoTo , manda il controllo ad un'altra
line del codice , per esempio in Basic :
Print "I'm Francesco"
goto good:
Print "I'm Frank"
good:
Print "I'm Checco"
Questo codice stamperà solo I'm Francesco e I'm Checco , ma non I'm Frank
..... Capite ? Vi prego aiutatemi , è importante , rispondete sia al news
che 
fma...@freemail.it
 , Grazie Mille !

Le ottime ragioni della programmazione strutturata ti consiglierebbero
di evitare salti incondizionati a labels, perche' intanto rendono il
codice illeggibile, poi le stesse cose si possono fare con iterazioni
selezioni e sequenze di comandi ("Teorema di Jacopini-Bohm") e poi
perche' perche' il programma stesso dopo, sarebbe difficilmente adatto
alla manutenzione, all'aggiornamento et similia ... quindi ti
sconsiglio proprio di fare salti incondizionati.
Augusto Pucci
Webmaster di Prospektiva On-line
http://go.to/Prospektiva

Please keep the ng English-language so everyone can benefit
from the replies.
The syntax for goto in C is
printf("Fred\n");
goto label;
printf("Bert (This will never be printed)\n");
label:
printf("Harry\n");
I'm not sure I should tell you this. 90% of the time goto
is a BAD THING. Try to re-write code so that it uses if()
blocks and while() loops instead of goto.
* Sent from AltaVista 
http://www.altavista.com
 Where you can also find related Web Pages, Images, Audios, Videos, News, and Shopping.  Smart is Beautiful

 wrote in message
3899bc78...@news.tin.it...


Guarda che non c'e' affatto bisogno di una simile procedura poiche'
come dimostrato dal teorema da me citato e che tra l'altro e'
costruttivo, ogni algoritmo non strutturato puo' essere sempre er dico
sempre reso da uno strutturato equivalente.


 from the replies.
In un NG italiano? Ma scherziamo?
Allora perchè non scrivere anche in francese, tedesco, russo, ecc...
--
Alessandro Monti

Alessandro Monti a écrit dans le message ...

Because it was cross-posted to clc which is an international newsgroup
speaking English. If you want to speak Italian, please reduce the x-post to
iclc.
--
-hs-
CLC-FAQ: 
http://www.eskimo.com/~scs/C-faq/top.html
ISO-C Library: 
http://www.dinkum.com/htm_cl
"It's specified. But anyone who writes code like that should be
transmogrified into earthworms and fed to ducks." -- Chris Dollin CLC

 reply to both to newsgroup and 
fma...@freemail.it
 , 
No, it isn't.  
-- 
Martin Ambuhl	
mam...@earthlink.net
What one knows is, in youth, of little moment; they know enough who
know how to learn. - Henry Adams
A thick skin is a gift from God. - Konrad Adenauer
__________________________________________________________
Fight spam now!
Get your free anti-spam service: 
http://www.brightmail.com

unico modo di trasformare un ricorsione in una iterazione, quando serve.
Il goto non e' realmente necessario.
Le ricorsioni si trasformano in iterazioni e il C riesce a
implementare senza goto le une e le altre.
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
---------------------------------------------

 unico modo di trasformare un ricorsione in una iterazione, quando serve.
Non mi risulta. Fammi un esempio.
EMG

 iclc.
Non sapevi che il cross-post č vietato dalle regole generali di Usenet?
EMG

codice illeggibile,
Beh, adesso non esagerare... :-)
Saluti,
    Mardy

Ecco questo mi pare proprio giusto per una volta siamo daccordo... sai
che io ho idee flessibili su cio' che e' OT, ma qui siamo su
it.comp.lang.c su it appunto !!! E parlare inglese mi pare proprio
IT... in tutti i sensi :-)


 wrote:
: you wrote:
: Il goto non e' realmente necessario.
: Le ricorsioni si trasformano in iterazioni e il C riesce a
: implementare senza goto le une e le altre.
Il goto e' molto importante. Non serve per scrivere buoni algoritmi
compatti e ben pensati, ma serve per scrivere i kernel, i firewall
e cose del genere che hanno alte performance e siano facili da leggere.
Un esempio tipico e' il seguente:
	if (tcp->flags & (TH_SYN|TH_FIN))
		goto discard;
	some_operation_bla_bla;
	if (tcp->flags & TH_ACK) {
		if (bla bla)
			send_rst();
		goto discard
	}
	...
	no_problem_do_your_work(tcp);
discard:
	free(tcp);
	return;
Il kernel di linux ad esempio fa ampio uso di questa impostazione,
non perche' i kernel-developer amano scrivere codice poco leggibile
o amano usare la goto, ma perche' a volte questo costrutto e'
paradossalmente piu' leggibile. Inoltre spesso e' utile per uscire
da cicli che hanno una certa profondita' se non si vogliono usare
a volte poco chiare variabili di 'stato'.
ciao
antirez

so come scrivere GoTo in C, c'è un istruzione per farlo ??
Esiste, esiste, ma ti sconsiglio caldamente di utilizzarla.
Il Ghenio
-----
Proteggeremo il mondo della devastazione!
Uniremo tutti i popoli nella nostra nazione!
Denunceremo i mali della verità e dell'amore,
Estenderemo il nostro potere fino alle stelle.
Jesse!
James!
Team Rocket pronto a partire alla velocità della luce.
Arrendetevi subito oppure preparatevi a combattere.
Miaaaoooo, proprio cosi'!
(Team Rocket)
-----




Non sapevi che il cross-post č vietato dalle regole generali di Usenet?
Eddai, vietato proprio no; diciamo che e' sconsigliato (altrimenti il GCN ne
avrebbe reso impossibile l'utilizzo). :-)
Saluti,
    Mardy

 pare?
Questione di gusti; io lo preferisco.
Se il messaggio e' postato indipendentemente su due newsgroups che io
leggo, mi viene presentato due volte.
Se un messaggio e' cross-posted su due newsgroups che io leggo, avendo
lo stesso ID, quando lo ho letto sul primo dei newsgroups non mi
compare nel secondo.
Che io sappia, non c'e' nula di maleducato nel cross-posting; anzi,
come ho gia' detto, mi appare come una forma di educazione.  La
'netiquette', a.k.a rfc1855 (vedi ad esempio il web site
http://www.dtcc.edu/cs/rfc1855.html
) non dice altro che:
- When sending a message to more than one mailing list, especially if
  the lists are closely related, apologize for cross-posting.
...
- If you introduce Cross-Posting to a group, or if you direct
  "Followup-To:" in the header of your posting, warn readers!  Readers
  will usually assume that the message was posted to a specific group
  and that followups will go to that group.  Headers change this
  behavior. 
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

Se lo ritrovo da qualche parte te lo spedisco...mmm mi sembra che ci
siano anche degli articoli sulla questione efficienza di algoritmi
strutturati e non-strutturati equivalenti, ma e' materiale vecchiotto


 
http://www.dtcc.edu/cs/rfc1855.html
) non dice altro che:
Sul gruppo  it.faq  e' disponibile un bellissimo messaggio
dall'inequivocabile soggetto <Funzionamento delle news: il crosspost e`
Male>
--
________________________________
Togliete NoSpaM per rispondermi
bye Brain

 compare nel secondo.
Hai ragione. Confondevo il cross-posting con lo spamming. Però devi
ammettere che se i newsgroup, come nel caso in esame, sono molto diversi
allora il cross-posting e lo spamming diventano molto simili.
EMG

Il goto e' molto importante. 
Ripeto meglio il concetto : il goto, pur essendo molto importante per
alcune applicazioni di nicchia altamente specifiche, non e' realmente
necessario.


Beh, adesso non esagerare... :-)
Si vede che non hai vissuto la crisi degli anni '60 !! ;)


sempre reso da uno strutturato equivalente.
siete in xpost su un gruppo (comp.lang.c) non
italiano.
Oha
-- 
"Qualcuno mi spieghi perche' 144 e' l'unico
quadrato perfetto della serie di Fibonacci"