On Wed, 12 Oct 2011 09:21:27 +0200, io_x wrote:
> {\rtf1\ansi\ansicpg1252\uc1
> \deff0\deflang1040\deflangfe1040{\fonttbl{\f0\from an\fcharset0\fprq2{\*\panose
> 02020603050405020304}Times New
> Roman;}{\f2\fmodern\fcharset0\fprq1{\*\panose
> 02070309020205020404}Courier New;}
> {\f3\froman\fcharset2\fprq2{\*\panose
> 05050102010706020507}Symbol;}{\f28\froman\fcharset 238\fprq2 Times New
> Roman CE;}{\f29\froman\fcharset204\fprq2 Times New Roman
> Cyr;}{\f31\froman\fcharset161\fprq2 Times New Roman Greek;}
> {\f32\froman\fcharset162\fprq2 Times New Roman
> Tur;}{\f33\froman\fcharset177\fprq2 Times New Roman
> (Hebrew);}{\f34\froman\fcharset178\fprq2 Times New Roman
> (Arabic);}{\f35\froman\fcharset186\fprq2 Times New Roman Baltic;}
> {\f44\fmodern\fcharset238\fprq1 Courier New
> CE;}{\f45\fmodern\fcharset204\fprq1 Courier New
> Cyr;}{\f47\fmodern\fcharset161\fprq1 Courier New
> Greek;}{\f48\fmodern\fcharset162\fprq1 Courier New
> Tur;}{\f49\fmodern\fcharset177\fprq1 Courier New (Hebrew);}
> {\f50\fmodern\fcharset178\fprq1 Courier New
> (Arabic);}{\f51\fmodern\fcharset186\fprq1 Courier New
> Baltic;}}{\colortbl;\red0\green0\blue0;\red0\green 0\blue255;\red0\green255\blue255;\red0\green255\bl ue0;\red255\green0\blue255;\red255\green0\blue0;
> \red255\green255\blue0;\red255\green255\blue255;\r ed0\green0\blue128;\red0\green128\blue128;\red0\gr een128\blue0;\red128\green0\blue128;\red128\green0 \blue0;\red128\green128\blue0;\red128\green128\blu e128;\red192\green192\blue192;}{\stylesheet{
> \ql
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> \fs24\lang1040\langfe1040\cgrid\langnp1040\langfen p1040 \snext0
> Normal;}{\*\cs10 \additive Default Paragraph Font;}}{\info{\title
> LINGUAGGIO }{\author }{\operator }
> {\creatim\yr2011\mo10\dy12\hr9\min10}{\revtim\yr20 11\mo10\dy12\hr9\min10}{\version1}{\edmins0}{\nofp ages5}{\nofwords1312}{\nofchars7479}{\nofcharsws91 84}{\vern8269}}\margl1134\margr1134\margt1417\marg b1134
> \deftab708\widowctrl\ftnbj\aenddoc\hyphhotz283\nox lattoyen\expshrtn\noultrlspc\dntblnsbdb\nospacefor ul\formshade\horzdoc\dgmargin\dghspace180\dgvspace 180\dghorigin1134\dgvorigin1417\dghshow1\dgvshow1
> \jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrf oot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\u seltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkru le
> \fet0\sectd \linex0\sectdefaultcl
> {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang{\ pntxta .}}
> {\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang{ \pntxta
> .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta
> .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnha ng{\pntxta
> )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta
> )}}
> {\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang{ \pntxtb (}{\pntxta
> )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhan g{\pntxtb (}{\pntxta
> )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnha ng{\pntxtb (}{\pntxta
> )}}{\*\pnseclvl9
> \pnlcrm\pnstart1\pnindent720\pnhang{\pntxtb (}{\pntxta )}}\pard\plain
> \qc
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> \fs24\lang1040\langfe1040\cgrid\langnp1040\langfen p1040 {\b LINGUAGGIO C
> \par }\pard \ql
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {\b \par Le Parole Chiave Del Linguaggio
> \par
> \par }{Le seguenti parole sono riservate per il linguaggio; quindi non
> possono avere altri usi in particolare nella definizione di nuove
> variabili. \par
> \par }{\f2\lang1033\langfe1040\langnp1033 auto double int
> struct
> \par break else long switch \par case enum
> register typedef \par char extern return
> union \par const float short unsigned \par continue
> for signed void \par default goto sizeof
> volatile \par do if static
> while }{\lang1033\langfe1040\langnp1033
> \par
> \par }{\b I Tipi Principali e Dichiarazioni \par
> \par }{I tipi principali usati dal linguaggio sono i seguenti: \par
> \par }{\f2\lang1033\langfe1040\langnp1033 char signed char
> unsigned char
> \par int signed int unsigned int \par }\pard \qj
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {\f2\lang1033\langfe1040\langnp1033 short int short
> unsigned \par }\pard \ql
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {\f2\lang1033\langfe1040\langnp1033 long int long
> unsigned \par float void
> \par doble long double
> \par }{\lang1033\langfe1040\langnp1033 \par }{sinonimo di "signed int"
> \'e8 "int"; sinonimo di "unsigned int" \'e8 "unsigned".
> \par "float", "double" e "long double", i tipi che chiamiamo tipi
> floating, possono essere sinonimi
> \par tra di loro; la stessa cosa vale per "char" rispettivamente con
> "signed char" oppure con "unsigned char"; possono essere sinonimi tra di
> loro anche i tipi "short int" "int" "long int".
> \par Sono sinonimi anche "unsigned short" e "short unsigned"; "unsigned
> long" e "long unsigned" ecc. Deve per\'f2 succedere che considerando gli
> insiemi che i tipi definiscono
> \par }{\f2
> \par }{\f2\lang1033\langfe1040\langnp1033 unsigned har
> }{\f3\lang1033\langfe1040\langnp1033 {\field{\*\fldinst SYMBOL 205 \\f
> "Symbol" \\s 12}{\fldrslt\f3\fs24}}}{\f2\lang1033\langfe1040\la ngnp1033
> short unsigned }{\f3\lang1033\langfe1040\langnp1033 {\field{\*\fldinst
> SYMBOL 205 \\f "Symbol" \\s
> 12}{\fldrslt\f3\fs24}}}{\f2\lang1033\langfe1040\la ngnp1033 unsigned int
> }{\f3\lang1033\langfe1040\langnp1033 {\field{\*\fldinst SYMBOL 205 \\f
> "Symbol" \\s 12}{\fldrslt\f3\fs24}}}{ \f2\lang1033\langfe1040\langnp1033
> long unsigned \par signed char }{\f3\lang1033\langfe1040\langnp1033
> {\field{\*\fldinst SYMBOL 205 \\f "Symbol" \\s
> 12}{\fldrslt\f3\fs24}}}{\f2\lang1033\langfe1040\la ngnp1033 short
> }{\f3\lang1033\langfe1040\langnp1033 {\field{\*\fldinst SYMBOL 205
> \\f
> "Symbol"
> \\s 12}{\fldrslt\f3\fs24}}}{\f2\lang1033\langfe1040\la ngnp1033
> }{\f3\lang1033\langfe1040\langnp1033 {\field{\*\fldinst SYMBOL 205
> \\f
> "Symbol" \\s 12}{\fldrslt\f3\fs24}}}{\f2\lang1033\langfe1040\la ngnp1033
> long int}{
> \lang1033\langfe1040\langnp1033
> \par }{\f2 float }{\f3\lang1033\langfe1040\langnp1033
> {\field{\*\fldinst SYMBOL 205 \\f "Symbol" \\s
> 12}{\fldrslt\f3\fs24}}}{\f2 double
> }{\f3\lang1033\langfe1040\langnp1033 {\field{\*\fldinst SYMBOL 205 \\f
> "Symbol" \\s 12}{\fldrslt\f3\fs24}} }{\f2 long double
> \par }{
> \par ove per esempio con "}{\f2 short int
> }{\f3\lang1033\langfe1040\langnp1033 {\field{\*\fldinst SYMBOL 205 \\f
> "Symbol" \\s 12}{\fldrslt\f3\fs24}}}{\f2 int}{" intendo che il range di
> definizione del tipo "}{\f2 short int}{", \'e8
> contenuto nel range di definizione degli interi.
> \par
> \par Nelle macchine a 32 bit che abbiamo attualmente e con il
> compilatore che usiamo i range dei tipi principali [cio\'e8 tutti i
> valori permessi per il tipo; dal numero minimo al numero massimo]
> \par }{\lang1033\langfe1040\langnp1033 char[-128..127] unsigned
> char[0..255] short int[-32768..32767] unsigned short[0...65535]
> int[-2147483648...2147483647] unsigned int[0...4294967295]. }{
> Notiamo che 8 bit possono descrivere i range -128..127 e 0..255, mentre
> i tipi short possono avere valore descritti da 16 bit esattamente,
> mentre i tipi unsigned int ed int possono avere avere valori descritti
> completamente da 32 bit.
> \par
> \par }\pard \qj
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {L'header standard }{\f2 <limits.h>}{ descrive i range di tali tipi; per
> i tipi float(i tipi con i numeri con la virgola) }{\f2 <float.h> }{\'e8
> l'header da guardare per cercare i valori minimi e massimi.
> \par Osserviamo che gli interi sono numeri che possono essere anche
> negativi, esempio 0 -4 3
> \par mentre i tipi float contengono numeri che hanno la virgola del tipo
> .123 -1.003 1.3e-4 (numero in notazione scientifica che significa
> 1.3*10^(-4)=0.00013 [* \'e8 il per, ^ \'e8 l'elevato a]) \par
> \par Ogni variabile prima di essere usata deve essere dichiarata, per
> esempio se si vuole dichiarare una variabile intera di nome var, si
> scriver\'e0 dopo una qualsiasi parentesi graffa '\{' all'interno di una
> funzione (variabile automatica) altrimenti se \'e8
> definita fuori da qualsiasi funzione si chiama variabile globale.
> Esempi di
> dichiarazione:
> \par }{\f2 int var;
> \par }{le dichiarazioni delle variabili si possono fare o uno per riga
> esempio: \par }{\f2 int a;
> \par int b;
> \par int c;
> \par }{oppure tutte in una riga
> \par }{\f2 int a, b, c;
> \par }{oppure si possono inizializzare nella definizione anche come in:
> \par }{\f2 int a=0, b=1, c=2;
> \par }{nella definizione il valore da assegnare alla variabile (quello a
> destra) deve stare nell'intervallo dei valori possibili per il tipo
> altrimenti tale numero viene convertito in un'altro numero non uguale al
> primo. I nomi delle variabili non possono iniziare per _ ne possono \par
> essere parole chiavi o iniziare per E o per str nel caso si utilizzi
> header <string.h>
> \par Se le variabili sono globali (fuori da qualsiasi funzione) e non
> sono inizializzate a un qualche valore, il loro valore assegnato dal
> sistema \'e8 0, la loro accessibilit\'e0
> saranno tutte le righe seguenti; altrimenti se le variabili sono
> automatiche e
> non sono inizializzate il loro valore \'e8 non definito (possono essere
> qualsiasi numero) la loro accessibilit\'e0 \'e8 all'interno delle
> parentesi \{\} ove sono definite.
>
> \par
> \par Array
> \par Si possono definire anche nomi di variabili che sono un vettore di
> elementi del tipo esempio:
> \par }{\f2\lang1036\langfe1040\langnp1036 int a[128]; \par double
> res[32];
> \par }{la prima definizione, definisce un vettore di 128 elementi di
> tipo intero, il primo di essi \'e8 a[0] il secondo \'e8 a[1], l'ultimo
> di essi a[127] che sono tutti del tipo intero e ove a[i-1] \'e8
> contiguo a in memoria ad a[i]; \par }{\lang1033\langfe1040\langnp1033 la
> stessa cosa la seconda definizione, che definisce un vettore di double,
> il primo di essi \'e8 res[0] il secondo \'e8 res[1], l'ultimo di essi
> res[31].
> \par
> \par Puntatori
> \par Si possono definire puntatori a dei tipi precedentemente definiti;
> esempio: \par }{\f2\lang1033\langfe1040\langnp1033 int a[100], *p, b;
> /* tra l'altro definisce
> \par il puntatore a int p \par
> */
> \par
> \par p=a; /* fa puntare tale puntatore all'inizio dell'array */ \par
> b=p[0]; /* assegna a b l'elemento o dell'array definito */ \par
> p[99]=*p; /* assegna a a[99] il valore p[0]== *p
> */}{\lang1033\langfe1040\langnp1033
> \par
> \par Strutture
> \par Si possono definire anche nomi di variabili che sono delle
> strutture di elementi che possono essere altre strutture di elmenti \par
> }{\b\lang1033\langfe1040\langnp1033 Operatori \par
> }{\lang1033\langfe1040\langnp1033 \par Gli operatori del C sono, da chi
> ha precedenza maggiore a chi ha precedenza minore:
> \par (i nomi sono sotto; operatore unario significa che si applica a un
> solo argomento mentre operatore binario significa che si applica a due
> argomenti; \par esempio di operatore unario: il - in -1 \par esempio
> di operatore binario: il - in 3-5 o l'operatore + in a+b) \par
> \par }\pard \ql
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {\f2\lang1033\langfe1040\langnp1033 () [] -> .
> \par operatori parentesi, accesso, punto \par
> \par }\pard \ql
> \li0\ri0\widctlpar\tx8788\aspalpha\aspnum\faauto\a djustright\rin0\lin0\itap0
> {\f2\lang1033\langfe1040\langnp1033 ! ++ -- + - * & (Tipo)
> sizeof \par }\pard \ql
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {\f2\lang1033\langfe1040\langnp1033 sono gli operatori unari \par
> negazione logica, incremento, decremento, pi\'f9, meno, deferenzia,
> indirizzo, operatore cast di tipo, operatore sizeof \par
> \par
> \par * / %
> \par operatori binari moltiplicazione, divisione, modulo \par
> \par }\pard \qj
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {\f2\lang1033\langfe1040\langnp1033 + - \par operatori binari somma e
> differenza \par
> \par << >>
> \par operatori binari shift di sinistra e di destra \par
> \par < <= > >= != ==
> \par operatori binari
> \par minore, minore o uguale, maggiore, maggiore o uguale, diverso,
> uguale \par
> \par &
> \par operatore binario bit a bit and
> \par
> \par ^
> \par operatore binario bit a bit xor
> \par
> \par |
> \par operatore binario bit a bit or
> \par
> \par &&
> \par operatore binario and logico
> \par
> \par ||
> \par operatore binario or logico
> \par
> \par ?:
> \par operatore ternario condizionale
> \par
> \par = += -= *= /= %= &= |= <<= >>= \par operatori binari
> di assegnamento \par
> \par ,
> \par operatore binario virgola
> \par }{\lang1033\langfe1040\langnp1033 \par }\pard \ql
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {\f2\lang1033\langfe1040\langnp1033 Esempi: \par int a[100], b; /*
> definisce lo spazio per 100 interi e lo \par chiama a
> [array a]; definisce lo spazio \par per un intero e lo
> chiama b \par */
> \par int *y; /* y \'e8 un puntatore a interi \par
> */
> \par b=3; /* b \'e8 uguale a tre subito dopo questa istruzione */
> \par
> \par /* Esempi di operatori parentesi */ \par a[0] = 2; /* il primo
> intero dell'array \'e8 2 */ \par a[99]=10; /* l'ultimo elemento
> dell'array \'e8 uguale a 10 */ \par a[7]=(a[0]+a[99])*b; /* a[7] uguale
> a 36 */ \par /*esempi di operatore */
> \par v=a;
> \par a[0]=v->
> \par
> \par }\pard \qj
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {\lang1033\langfe1040\langnp1033
> \par }\pard \ql
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {\b\lang1033\langfe1040\langnp1033 Le parole chiave "if", "else if" ed
> "else" \par }{\b
> \par }\pard \ql
> \li240\ri0\widctlpar\aspalpha\aspnum\faauto\adjust right\rin0\lin240\itap0
> {\f2 0 [zero] \'e8 il valore booleano }{\b\f2
> FALSO}{\f2 \par un numero diverso da zero: \'e8 il valore booleano
> }{\b\f2 VERO}{\f2 \par
> \par }\pard \ql
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0
> {\f2 == si legge "\'e8 uguale ad"
> \par != si legge "\'e8 diverso da" \par < si legge "\'e8
> minore di" \par <= si legge "\'e8 minore o uguale" \par > si
> legge "\'e8 maggiore di" \par >= si legge "\'e8 maggiore oppure
> uguale a" \par
> \par Se relazione \'e8 uno qualsiasi dei simboli "== != < <= > >="
> \par allora (op1 relazione op2) ritorna 1 (VERO) se la relazione
> \par tra gli operandi op1 e op2 \'e8 vera, 0 (FALSO) altrimenti.
> \par
> \par Esempio: (1<3) ritorna il valore 1 (vero), \par
> ma (1>3) ritorna il valore 0 (falso) \par
> \par && si legge "e" oppure "and" \par || si legge
> "o\\oppure" oppure "or" \par }{
> \par in particolare
> \par }{\f2 (2<=a && a< 3)}{ si legge "se due \'e8 minore o
> uguale ad }{\f2 a}{, }{\b e}{ }{\f2 a}{ \'e8 minore di 3" \par
> (in altre parole }{\f2 a}{ \'e8 compreso tra 2 e 3; due
> compreso, tre non compreso
> \par l'espressione di sopra risulta vera
> altrimenti risulta falsa)
> \par
> \par (}{\f2 2<=a || a==7}{) si legge "se due \'e8 minore o
> uguale ad }{\f2 a}{ }{\b oppure}{ }{\f2 a}{ \'e8 uguale a 7" \par
> (in altre parole se }{\f2 a}{ \'e8 un numero intero non
> negativo, allora per }{\f2 a}{ }{\f3\lang1024\langfe1024\noproof
> {\field{\*\fldinst SYMBOL 206 \\f "Symbol" \\s
> 12}{\fldrslt\f3\fs24}}}{\{0, 1, 2, 7\}
> \par l'espressione di sopra risulta vera mentre
> per gli altri valori di }{\f2 a }{risulta falsa) \par
> \par Le parole "}{\f2 if}{" ed "}{\f2 else}{" sono riservate al
> linguaggio e un costrutto del tipo:
> \par
> \par }{\f2 if(condizione1) istruzione1; \par else if(condizione2)
> istruzione2; \par else istruzione3; \par }{
> \par funziona nel seguente modo:
> \par se condizione1 ha valore boleano vero: si esegue l'istruzione1 e si
> esce dal costrutto.
> \par se condizione1 \'e8 falsa
> \par se condizione2 \'e8 vera: si esegue l'istruzione2 e si esce
> dal costrutto
> \par se condizione2 \'e8 falsa: si esegue l'istruzione3 e si
> esce dal costrutto.
> \par analogamente
> \par
> \par }{\f2 if(condizione1) istruzione1; \par else
> istruzione3; \par }{
> \par funziona nel seguente modo:
> \par se condizione1 ha valore boleano vero: si esegue l'istruzione1 e si
> esce dal costrutto;
> \par se condizione1 \'e8 falsa si esegue l'istruzione3 e si esce dal
> costrutto. \par
> \par Analogamente per tutte le altre combinazione if(), else if, else.
> \par }\pard \qj
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0 {
> \par }\pard \ql
> \li0\ri0\widctlpar\aspalpha\aspnum\faauto\adjustri ght\rin0\lin0\itap0 {
> \par }}
I think it's rather rude to post it to a newsgroup in that format and rather
optimistic to expect anyone taking the trouble to transform it into something
legible, given your track-record in this froup.
-------------------------------------------------------------------------------
_______________________________________
< Thank god!! ... It's HENNY YOUNGMAN!! >
---------------------------------------
\
\
___
{~._.~}
( Y )
()~*~()
(_)-(_)
-------------------------------------------------------------------------------