Newsgroup: it.comp.lang.c
Titolo: Appunti di C

E' da tempo che ho intenzione di buttare giù un manualetto sul linguaggio
C, senza troppe pretese.  Sarebbe, ovviamente, un "open book", liberamente
scaricabile dalla rete.  Mi chiedo se alcuni partecipanti di questo gruppo
(Resta, Kronos, Griffini, Max M., tanto per citarne alcuni) sarebbero
disposti a collaborare e/o correggere le bozze.
Andrea
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 disposti a collaborare e/o correggere le bozze.
Tempo permettendo, si.
g.

 disposti a collaborare e/o correggere le bozze.
Per la correzione delle bozze sono disponibile molto volentieri, ma
temo mi manchi il tempo per contributi piu` sostanziosi.
Se pero` dovessi trovare qualcosa di interessante tra i miei post usali
pure ;)
Luca
-- 
Home: 
http://kronoz.cjb.net
This message will self destruct in 5 seconds.

 Fammi sapere dove lo posti cosi` sono sicuro di non scaricarlo.
Sta tranquillo, non ti avevo neanche considerato.


 pure ;)
D'accordo, grazie ! ;-)


 Sta tranquillo, non ti avevo neanche considerato.
Il presuntuoso che c'e` in te non si smentisce mai :-(


 Il presuntuoso che c'e` in te non si smentisce mai :-(
Idem per il coglione che c'è in te.


 Andrea
SEI OT, PARLANE DA UN'ALTRA PARTE
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 SEI OT, PARLANE DA UN'ALTRA PARTE
ROTFL! :-)


 ROTFL! :-)
Mi piacerebbe lo scrivessero a te quando lo scrivi tu.
Infatti quando la domanda tipo "come si fa a leggere l'ID3 di un file
mp3" rispondi "sei OT" quando invece chiedono "come si fa la struttura
di un punto(x,y)" rispondi
Quindi vedi di andartene a ...


 Quindi vedi di andartene a ...
Come si fa la struttura di un punto (x,y) puo' essere un quesito in 
topic, in quanto la parte "difficile" verte sulla sintassi C
necessaria per definire un determinato tipo di dato non elementare.
Come si fa a leggere l'ID3  di un file mp3
e' un messaggio OT, in quanto la cosa "difficile" e' sapere
come e' fatto un ID3 e dove si trova all'interno del file mp3.
A quel punto leggerlo in C e' una cosa sicuramente banale.
Per rendere in topic il quesito bisogna formularlo in questo modo:
Devo leggere le seguenti informazioni (strutturate in questo modo ....,
che mi sono gia' studiato per conto mio) da un file di dati.
Come posso farlo in C ?
Ad esempio, ad un quesito di questo tipo (che verte sul C) potrei
rispondere, mentre al quesito originario che di fatto verte
su come e' codificato un ID3 non posso rispondere "a memoria"
e non ho voglia di andarmi a studiare la struttura di un mp3 solo per
poterlo fare (visto che Google puo' rispondere in modo piu' rapido e
preciso).
Spero che la distinzione sulle due tipologie di problemi ti sia
ora piu' chiara.
ciao,
g.

 Quindi vedi di andartene a ...
Tu e tutti gli idioti come te.


visto che Google puo' rispondere in modo piu' rapido e preciso.
Invece come si fa una struttura di un punto bidimensionale non la si
trova su google?
E che in questo ng a domande del tipo "come si usa la printf" o quando
chiedono la soluzione di un esercizietto di C ci sono dieci o piu'
risposte, mentre a domande un pelino piu' complesse naneche una.
Comunque questo 3D e' OT e cosi' lo stiamo solo alimentando
ulteriormente


 Tu e tutti gli idioti come te.
e quella cagna rognosa di tua madre


 dilettanti
ROTFL ! :-)


 ulteriormente
Le tue stronzate sono OT, non questo thread.


 Le tue stronzate sono OT, non questo thread.
Tua madre e' una cagna rognosa, tu di conseguenza


 Hai letto il post precedente?
ROTFL !


> ROTFL !
da ROTFL! :-) a ROTFL ! e' un progresso!
Mi raccomando continua a rispondere alle domande banali e a postare
cosi' che sei un mito per tutti noi


 cosi' che sei un mito per tutti noi
..AHAHAHAHAH...


 ulteriormente
Siccome mi sembra che tu ti stia proprio sforzando di NON capire,
questo e' il mio ultimo messaggio di risposta.
Come preambolo devi comprendere che qui nessuno e' obbligato a 
rispondere ai messaggi altrui. Sapessi quanti miei messaggi su altri
NG sono rimasti inascoltati o privi di risposta in questi ultimi
dieci-dodici anni. Quindi e' assolutamente perdente l'atteggiamento
"a lui avete risposto e a me no".
E' ovvio che in teoria a molte domande sul C si puo' rispondere
cercando con Google (o nel caso del C leggendo e studiando un buon manuale).
Tuttavia nel caso di domande semplici (alle quali mi costa poca fatica
rispondere) o interesssanti (alle quali mi diverto a rispondere)
se ho tempo e voglia e penso di conoscere la risposta, rispondo.
Ringraziando il cielo non c'e' nessun obbligo e ciascuno
e' libero di partecipare o meno alle discussioni.
Se uno mi chiede come si usa la prinft probabilmente non rispondo.
Se uno mi chiede un dettaglio su una particolarita' della printf
(per esempio le dimensioni dei campi specificate con *) allora magari 
rispondo.
Per quel che mi riguarda il tono della domanda e' essenziale:
sono molto piu' invitato a rispondere a qualcuno che apparentemente
ha provato a capire da solo ma non c'e' riuscito piuttosto
che a uno che pensa che questo NG sia un sostituto allo studio del
linguaggio o un modo per farsi fare i compiti a casa.
Analogamente sono molto piu' propenso a rispondere ad una domanda
banale ma ben spiegata piuttosto che ad una vaga e scritta in modo
ambiguo. Il motivo e' semplice: se un poster chiede aiuto (e quindi
tempo) agli altri secondo me deve aver lui per primo investito un
po' del suo tempo se non nella ricerca della soluzione almeno
a descrivere in un italiano ragionevole il suo problema.
La domanda sullo ID3 a suo tempo non l'ho neanche considerata perche'
come ti ho detto non e' una domanda alla quale si puo' rispondere
conoscendo solo il C, ma bisogna conoscere il formato dell ID3.
(Che io personalmente non conosco e non sono interessato a conoscere.)
E quella e' una cosa che l'OP potrebbe smazzarsi da solo e/o altrove,
visto che tra l'altro non e' una cosa relativa di C. Se invece l'OP 
chiedeva come leggere una zona di bytes compresa tra il byte 6 e il byte 
94 di un file binario e che contiene 4 campi alfanumerici etc.etc.,
(sto inventando) magari avrei risposto.
ciao/addio,
g.

 rispondere ai messaggi altrui. 
Esatto, ed io ho solo affermato che il 3D e' OT
per il resto ROTFL


 Esatto, ed io ho solo affermato che il 3D e' OT
AHAHAHAHAH... continuaaa mi fai pisciare dalla risate!!! :-)


 
Le tue non sono OT?  Sei solo il solito maleducato.


Giovanni ha scritto:
<snip>
Ribadisco il consiglio: taci coglione.


 
Non fartela addosso pero`.


 
Naturalmente da un presuntuoso come te che si crede l'unicao depositario 
del C non ci si puo` aspttare altro cha maleducazione.
Ed ora rispondi pure con le tue solite offese, ma la sostanza non 
cambia.  Maleducato sei e maleducato rimani


 del C non ci si puo` aspttare altro cha maleducazione.
Sei tu che lo credi, io non l'ho mai detto.  E comunque sono pronto ad
affermare che di C ne capisco sicuramente più di te.  A latere, è
divertente notare come due imbecilli (tu e Aieie) cerchiate di darvi man
forte l'uno con l'altro, alla minima avvisaglia di lite con il nemico
comune.  Be', se lo vuoi sapere, a me date l'idea di due criceti che si
affannano a correre invano sulla ruota.  Siete due idioti e rimanete tali.
 Lo dimostrate dalle cazzate che dite e da voi non ci si può aspettare
altro che cretinaggine.  Due troll, per intendersi.  Non ci vuole molto a
capire che, non avendo argomentazioni tecniche sufficienti a sostenere le
vostre teorie, in quanto stupidaggini belle e buone, sfociate per via
naturale nel conflitto personale.  Io sto qui all'aperto, parlo di C in
quanto lo conosco e ti giudico come un coglione firmandomi nome e cognome,
tu resta pure nel materno e caldo anonimato.  Le offese che io rivolgo a
te non sono gratuite, ma sono solo il riflesso speculare dei tuoi
comportamenti.  Tu saresti un coglione, comunque, anche se non fossi io a
dirtelo.



Ennesima dimostrazione di quanto tu sia maleducato.


 Ennesima dimostrazione di quanto tu sia maleducato.
Taci, imbecille.


 
Finche` continui ad offendermi NO


 disposti a collaborare e/o correggere le bozze.
E' pericoloso partecipare a questo thread... spero che il mio post non
susciti nulla di strano...
Ad ogni modo, scrivere un "manualetto" di C e' chiaramente una cosa che
hai a cuore da tempo, si capisce da come scrivi.
I fatti che devi tenere in considerazione sono:
- richiede un mucchio di tempo
- ce ne sono gia' altri
In altre parole devi investire un mucchio del tuo tempo per una cosa che
gia' c'e' e quindi rischia in parole povere di essere tempo sprecato.
E' quindi importante che tu ti faccia venire qualche idea piu' precisa e
dettagliata di come renderlo "diverso", di cosa manchi, di quali siano
gli errori degli altri manuali, etc...
Se parti con l'idea di scrivere "un manualetto di C senza troppe
pretese" a mio avviso ti conviene non partire nemmeno.
Se invece hai fantasia e sai pianificare un libro unico diverso e
migliore o anche solo non migliore, ma pensato per un target di persone
per le quali non c'e' nessun libro adatto, allora partire con un libro
puo' essere una ottima idea.
Fancendo brainstorming, quindi idee senza senso buttate li per darti una
idea:
- corso di C per anziani (esiste gia? diverso perche' per un target
particolare)
- corso di C da ascoltere durante il sonno (diverso per modalita' di
delivery)
- corso di C a fumetti (diverso per impaginazione e presentazione dei
contenuti)
- il miglior corso di C mai fatto (diverso perche' migliore, senza poche
pretese...)
- etc...
Ovviamente nessuna delle idee sopra e' buona. Scrivere un manuale di C
e' difficile, ma pianificarlo e' ancora piu' difficile forse!
Spero di aver dato una impronta leggermente piu' costruttiva al thread
(che non e' OT al contrario di quello che si e' detto).
Buona fortuna Andrea,
Tommaso Galleri


 
Stai davvero correndo un bel rischio. ;-)
Dare un qualsiasi consiglio ad Andrea e` MOLTO pericoloso.
Ora sei segnato sul libro nero :-(
Ciao
Giovanni


 Dare un qualsiasi consiglio ad Andrea e` MOLTO pericoloso.
Taci, coglione.


 Se invece hai fantasia e sai pianificare un libro unico diverso [...]
Tommaso, il succo di quello che mi stai dicendo è di non reinventare la
ruota.
Apprezzo il consiglio e capisco la preoccupazione.  Che ci sia del
materiale in giro lo so bene (neanche tantissimo però), ma purtroppo, in
moltissimi casi, è materiale scadente. C'è poco da avere fantasia, quando
si tratta di linguaggi di programmazione, già scrivere un tutorial che
illustri le caratteristiche del C come ratificato dal comitato ISO sarebbe
un passo avanti.  Il mio scopo, comunque, è di avere qualcosa di "open
source", libero e gratuito.


 
Come al solito non cambi musica :-(
-- 
Vittorio Sgarbi...  un uomo cosi' inutilmente pieno di se'...  Sapete
come fa Sgarbi a sbucciare un'arancia?  Appoggia il coltello alla buccia
e tutto l'universo gli ruota intorno!
                    "Mai Dire Gol"

 
Come al solito non cambi musica :-(


 source", libero e gratuito.
Provo ad intromettermi nella discussione...
Premetto che, in senso assoluto, sono sempre d'accordo nel produrre
documentazione relativa ad un argomento: non ce ne e` mai abbastanza
e molto spesso quella che si trova online gratuitamente e` di qualita`
discutibile per contenuti, forma e correttezza del codice.
Per quanto riguarda il "reinventare la ruota", ritengo che se questo
progetto verra` curato (e mi sembra che Andrea sia una persona che
tiene abbastanza alla precisione) potrebbe approdare a risultati buoni:
anche se conterra` molto materiale gia` presente in rete, un'ottica
diversa, un modo diverso di descrivere gli argomenti, una organizzazione
diversa del materiale possono sicuramente essere di beneficio per i
fruitori del documento.
Cerco di concretizzare alcune idee, concentrandomi su come un nuovo
manuale potrebbe essere diverso da quelli che si trovano in giro.
I manuali online o anche cartacei (non solo del C) sono spesso poco
attenti agli standard, sono imprecisi e mescolano il tutto con discrete
dosi di estensioni implementative, trattate come elementi standard
del linguaggio. Mantenere la conformita` agli standard mi sembra un
buon punto di partenza (e i "tatuaggi" di Andrea aiutano ;) )
I manuali online spesso sono orientati ai principianti: descrivono
superficialmente gli aspetti, offrendo una sola chiave di lettura
e lasciando a bocca asciutta chi le basi ce l'ha e vorrebbe andare
oltre. Si puo` scrivere, per ogni argomento, una prima parte
introduttiva che sia semplice e poco dettagliata, giusto per chi vuole
iniziare a scrivere i programmini, e una seconda parte in cui si
scende molto piu` nel particolare.
I manuali online difficilmente presentano tecniche avanzate o usate
nella pratica per risolvere problemi comuni (che ne so, come si implementa
una tabella di simboli). Porre l'accento su questo mi sembra utile.
I manuali online si limitano a descrivere la sintassi e come mettere
insieme programmi funzionanti. Mai mi e` capitato di leggere qualche
documento che descrivesse gli errori tipici che si commettono nella
programmazione quotidiana, e anche questo potrebbe essere un dettaglio
utile.
I manuali online mai parlano di "stile". Non intendo solo la formattazione
visiva del codice, ma anche e soprattutto quelle tecniche (tipo
incapsulamento e information hiding) che permettono di scrivere programmi
C eleganti, manutenibili, estendibili e grandi. Nemmeno si menziona mai
(neppure in testi universitari e manuali cartacei) come progettare
software (intendo proprio il campo dell'ingegneria del software) e poi
implementarlo in C... oramai pare che se vuoi fare le cose "serie" _devi_
progettare a oggetti (e mi va pure bene) e implementare in Java, C++ o
qualsiasi altro linguaggio "orientato agli oggetti", e francamente mi
pare questa una boiata colossale (cito Motif, GTK, X Windowing System,
Brl-Cad come esempi di software grosso e complesso che usa un modello
ad oggetti e un'implementazione in C). Anche questo aspetto sarebbe
interessante.
Da quando sono qui (non molto a dire il vero) ho notato l'assenza delle
FAQ in questo NG, contrariamente a comp.lang.c. Potrebbe essere utile
fornire delle belle FAQ, magari chiedendo l'autorizzazione agli autori
di quelle di comp.lang.c per tradurle in italiano.
Altre idee non mi vengono. Per riassumere, il progetto potrebbe partire
discutendo del solo linguaggio, poi trattare argomenti avanzati, poi
gli errori tipici, le pratiche piu` comuni, poi via via verso un manuale
di sviluppo software (dalla progettazione al codice), poi potrebbe
trattare l'integrazione del C con librerie e altri linguaggi (per es.
come scrivere GUI con Motif, Gtk, WxWindows, ecc., come integrare C e
Tcl/Tk, Prolog, Python, ecc., come accedere ai database, ecc.).
Forse ho sparato troppo in alto ^_^; ovviamente Andrea sei libero e
padrone di cestinare tutte queste idee, prenderne solo qualcuna o
semplicemente tenerle a mente.
Per quanto mi riguarda, se dovesse servire una mano e tempo permettendo,
posso anch'io dare un minimo aiuto :)
Saluti,
Marco
-- 
To email me, remove the no_ and _spam from my address.

 Tcl/Tk, Prolog, Python, ecc., come accedere ai database, ecc.).
Sì, ho pensato, in linea teorica, a tutto questo. La cosa che mi piace dei
materiali on-line è la possibilità di crescere a dismisura e diventare vere
miniere di informazioni. Scrivere un'enciclopedia del C non sarebbe male ;-)
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

> Come al solito non cambi musica :-(
...e neanche cervello cambia, anzi acquista dato che non ne ha...


 moltissimi casi, è materiale scadente. 
Il tuo invece sara' al top (ma ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL ROTFL
V
