mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c
Titolo: puntatori

Qualcuno può indicarmi un buon testo o, ancora meglio, un sito sulla rete
dove trovare spiegazioni soddisfacenti sui puntatori? Ciao

 dove trovare spiegazioni soddisfacenti sui puntatori? Ciao
"A tutorial on pointers and arrays in C"
http://www.netcom.com/~tjensen/ptr/cpoint.htm
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

sempre solo immortale TrickyC 
www.manuali.net
 e poi cerca tra i link a "visual C"

Newsgroup: it.comp.lang.c
Titolo: Cerco compressore

Potete procurarmi l'algoritmo di compressione dell'arj ?
grazie per la risposta.
fg...@libero.it

grazie per la risposta.
Cerca informazioni in rete circa il Lempel-Ziv (o Lempel-Ziv-Welch) e
sue varianti.
--------------------------------------------------------
* Andrea Laforgia        (
andrea_...@bigfoot.com
) *
--------------------------------------------------------

Newsgroup: it.comp.lang.c
Titolo: probemi a svolgere gli esercizi Kerninghan Ritchie

ciao
ho rispolverato il libro linguaggio C seconda edizione, avendo installato
linux, con un bel compilatore gratuito Gcc :))))
sto' ricominciando a studiare!!!!  ( me ditemi che sono ..... BRAVO!!!)
grazie ( la sincerita' e' la miglior cosa)
Dopo il momento di follia torniamo alla "realtà"
.....
i primi esercizi tipo uno che conta i caratteri non mi mostra nulla sullo
schermo
#include <stdio.h>  (stdio = Sto' da DIO)
main (){
int c;
while((c=getchar())!=EOF){
++c;
printf("%d,\n",c);
}
}
se invece faccio un prog che calcola l'area di un rettangolo utilizzando
anche scanf() ottengo numeri come 1232545 invece di un 45 visto che magari
9*5=45 d
utlizzando degli int come tipo dato, ....
bho....mi illuminereste?......Senza darmi fuoco ;)
ciao e grazie


I'm not prejudiced, I hate everyone equally.

grazie!
miii che errori che ho fatto.....
p.s. perche' printf deve stare fuori dalle parentesi?
secondo codice
#include <stdio.h>
main() {
int area,altezza,base;
printf("inserisci altezza e base");
scanf("%d,%d",&altezza,%base);
area=altezza*base;
printf("l\'area č : %d   altezza: %d    base: %d\n",area,altezza,base);
}
i valori numerici sono assurdi
grazie!!!!!1

  grazie!!!!!
ciao ..


 i valori numerici sono assurdi
Non dovrebbe nemmeno compilare in teoria...
-- 
Andrea Bergia - studente          Linux Registred User #281550
Per favore non mandatemi allegati in Word o PowerPoint.
Si veda 
http://www.fsf.org/philosophy/no-word-attachments.html

scanf ("%d %d", &altezza, &base);
Perchč non dovrebbe compilare, la scanf cosě č perfettamente valida
legge dallo stdin due interi separati da uno spazio.
Questo č il prototipo di scanf:
int scanf(const char *format, ...);

>scanf ("%d %d", &altezza, &base);
Lo so, ma mi riferivo a quella che aveva scritto lui:
scanf ("%d,%d", &altezza, %base);
per colpa di quel %. Ciao.

Newsgroup: it.comp.lang.c
Titolo: Arrotondare intero..

int a =10;
int b=19;
int c=b/a;
c viene arrotondato per eccesso?o per difetto?
come faccio a fargli fare una giusta approsimazione?

 ha scritto nel messaggio
news:ZZJsb.1850$9k3....@tornado.fastwebnet.it...

Per difetto.
Per approssimare all'unita' piu' vicina:
c=(b+5)/a;
Ciao,
Ema

"Danilo" wrote..:

Non viene effettuato nessuna approssimazione, il valore frazionario viene
semplicemente troncato.
Potresti dichiarare c come float e fare un casting su uno degli operandi:
float c = (float)(b) /a;
o
float c=b/ (float)a;

> c=(b+5)/a;
sicuro di non aver fatto qualche casino ?
;-)


Si', devo smettere di drogarmi... :-)))
La risposta avrebbe dovuto essere:
c=(b+a/2)/a;
Credo che funzioni, piu' o meno.
Magari abbisogna di un po' di tuning a seconda che si volgia arrotondare un
numero X.5 a X oppure a X+1.
Ma per il resto credo funzioni.
Ciao,
Ema
Newsgroup: it.comp.lang.c
Titolo: Scatto evento durante un loop

Ciao a tutti,io ho il seguente problema...
Sto sviluppando un programma con il C++ Builder,dove ad un certo punto il
programma deve continuare a ciclare per 5 minuti...
Io vorrei tramite un bottone di annulla, interrompere questo ciclo.
Il problema e che durante il ciclo l'evento relativo alla pressione del
bottone non scatta...
Come posso fare? ciao grazie...


???
che linguaggio usi? C o C++?
visto che parli di bottoni immagino tu stia usando una libreria
grafica. Quale?
postare magari l'evento di cui stai parlando potrebbe essere un aiuto.
Al momento ti posso solo dire che nel tuo codice c'e' un errore (doh!)
ma non sapendo nulla di preciso e' impossibile aiutarti.
Ciao Jack

Newsgroup: it.comp.lang.c
Titolo: simulatore 8086 o simile

ciao e grazie,
In questo periodo sto scrivendo per una persona un emulatore per un
subset del motorola 68000, se vuoi te lo mando appena finito, o ti
tengo al corrente del progetto.
--------------------------------------------------------
* Andrea Laforgia        (
andrea_...@bigfoot.com
) *
--------------------------------------------------------

 tengo al corrente del progetto.
Mi hanno detto che il motorola 68000 è un po' più complesso
dell'Intel 8086 (che penso di fare), ma sarei molto felice se
me lo mandi! Lo puoi fare direttamente all'indirizzo di invio
di questo messaggio
Grazie e ciao
Fabio.
Newsgroup: it.comp.lang.c
Titolo: Un consiglio su lettura da file...

    Ciao a tutti...
Mi serve un consiglio per la lettura da file di una matrice del tipo
abcd
efgh
ilmn
opqr
4X4 insomma...il problema è che (come avevo già specificato in un precedente
messaggio) con il ciclo
for (i=0;i<4;i++){
  fot (j=0;j<4;j++){
    fscanf(file,"%c",mat[i][j]));}}
la scanf legge e considera caratteri anche i segnalatori di fine riga...come
posso fare? La lettura deve avvenire carattere per carattere...
Grazie 1000 a tutti e buone Feste!
Enrico S.

 posso fare?
Saltali con una lettura a vuoto dopo ogni quattro.
EMG

Proverň, grazie mille!
Enrico S.

 posso fare? La lettura deve avvenire carattere per carattere...
Fai il ciclo lungo 5 e non 4, e scarti l'ultimo carattere letto di ogni
ciclo...
-- 
 Ciao, Bianco.
 Reply to luca.bianco (at) 
tiscalinet.it


leggi dal file con fgets() l'intera stringa e poi la disimpacchi.
FILE *fp;
fp=fopen("filename","rt");
char buf[10];
int i;
for (i=0); i < 4; ++i)
   {
	fgets(buf,sizeof(buf), fp);
	for (j=0; j < 4; ++j)
	  mat[i][j]=buf[j];
   }
HTH gfb

Newsgroup: it.comp.lang.c
Titolo: dichiarazioni di variaili nei cicli for

Correggetemi se sparo una cagata, ma mi sembra di ricordare che sia
permesso dichiarare nel C99 una variabile dentro i cicli for come in
c++. Solo che il gcc non mi compila questo
for (int j = 1 , bool found = false; j < levels && found != true; j++,
counter+=j*j*n_pixels) ;
in particolar modo non manda giů il bool.
E' perché le variabili dichiarate nelle condizioni del ciclo for devono
essere tutte dello stesso tipo?

 essere tutte dello stesso tipo?
vd. sopra.
PS: Se definisci variabili all'interno dell'istruzione for(), fai 
attenzione ad eventuali caveat. Per esempio, il programma sotto 
stampera' ovviamente 1000 (e non 10):
#include <stdio.h>
int main(void)
{
         int b = 1000;
         for (int a = 0, b = 0; a < 10; a++)
                 b++;
         printf("b=%d\n", b);
         return 0;
}
Ciao
-- 
Cybertoldo
Per rispondermi via email, sostituisci moc.liamg con 
gmail.com

 counter+=j*j*n_pixels) ;
...
Non ho tempo per controllare adesso e quindi vado a memoria. Direi che 
non č  esattamente cosě.  Nello standard 99 puoi dichiarare le variabili 
in  qualsiasi blocco e non necessariamente prima di istruzioni 
eseguibili.  Perň  non puoi farlo in un' espressione o in un blocco di 
controllo.
Se  riesco a trovare un po'   piů di tempo conrollo meglio.
Giorgio

Newsgroup: it.comp.lang.c
Titolo: Manuale C per socket

Ciao, sapreste consigliarmi un manuale (cartaceo o elettronico) per la
programmazione di socket in C oppure qualche risorsa su Web in merito?
grazie
VaLP


The majority of the stupid is invincible and guaranteed for all time.
The terror of their tyranny, however, is alleviated by their lack of
consistency.
                -- Albert Einstein

ciao

 ha scritto nel messaggio
news:dEZc6.29852$Up.1...@twister1.tin.it...

Newsgroup: it.comp.lang.c
Titolo: domande da novellino

sono alle primissime armi e vorrei porvi due domande:
come mai un programma che scrive 4 parole pesa 290kb come posso farlo
diventare + leggero????
fatto suddetto programma compilato con cygwin come faccio a non far
chiudere subito la finestra alla fine dell' esecuzione????
Grazie 
Jacy

 far chiudere subito la finestra alla fine dell' esecuzione????
  Apri una finestra della shell del DOS e lo esegui la` dentro, oppure
ci clicchi sopra con il tasto destro del mouse e verifichi nella pagina
delle proprieta` la voce "Chiudi finestra al termine dell'esecuzione".
	Alla prossima,
		Marco


Io (supernovellino più di Jacy, credo) uso lcc-win32 che crea eseguibili
stand-alone (mentre il VB 6 ha ancora bisogna delle librerie di run-time, ma
crea file piccoli in questi casi) di dimensioni assolutamente ragionevoli.
Non uso librerie particolari (perché non le conosco :) ) ma il mio unico
programmino funzionante  (calcola e scrive tutti i modi in cui possono
essere messe n regine su una scacchiera nXn senza mangiarsi) che utilizza
stdio, stdlib e winbase, occupa solo 19 Kb!!
Perché tutta 'sta differenza tra i due compilatori?

 Jacy
con system("pause");
o con getc();
prima di return 0;

 diventare + leggero????
strip nome_eseguibile.exe
-- 
 Ciao, Bianco.
 Reply to luca.bianco (at) 
tiscalinet.it

Newsgroup: it.comp.lang.c
Titolo: Socket again

Salve ragazzi...vi ringrazio in anticipo per l'eventuale risposta.
1 domanda solamente
supponendo che un client debba inviare ad un server un messaggio
di lunghezza variabile (cioè non nota a priori), ma di cui conosco il
massimo (ad esempio 10 byte), per
evitare il problema di dover studiare un protocollo apposta per gestire
la comunicazione, posso pensare
di allocare un buffer di MAX byte (in questo caso MAX=10) ed inviarlo
sulla socket?
Se si, quando il server effettua la read:   read(sok_id, MAX,  nel
buffer_ricezione) quanti caratteri in realtà
legge dalla socket? se ad esempio il client ne ha inviati 7 nel buffer
di 10 char, le tre posizioni vuote come vengono
trattate dall'interfaccia socket sia dalla parte client che server?
A buon rendere ragazzi, sono a Vostra disposizione per necessità.


Io conosco solo socket di Berkley in Unix (Linux). Se ti riferisci
a queste, in modo connection oriented puoi usare write per scrivere
lato client un numero arbitrario di bytes, senza prevedere a priori
quanti ne dovrai scrivere ad ogni esecuzione. la write ammette un
argomento con cui indiche quanti charatteri scrivere nel socket.
size_t write(int fd, void * buff, size_t numerocaratteridascrivere);
lato server non ci sono problemi: la read accetta un parametro simile
che puo' essere sovradimensionato, ma la read restituira' come valore di
ritorno il numero di char effettivamente letti:
size_t read(int fd, void * buff, numerodicaratteriesageratoesempio4096);
in * buff troverai i caratteri trasmessi, ma per sapere quanti sono
stati
letti nell' ultima lettura devi conservare il valore di ritorno di read:
char_ricevuti = read(socketid, .....);
ciao.
Newsgroup: it.comp.lang.c
Titolo: Libri in linea

Un po' di tempo fa ho scaricato da un sito
un "Libro" in HTML intitolato "Tricky C",
conoscete in rete altro materiale del genere,cioe' sul C?
Grazie mille
Bi...@tin.it

un "Libro" in HTML intitolato "Tricky C",
Non e` che mi puoi dire dove lo hai trovato? Grazie.
Massimo Lauria -> 
maxg...@nettaxi.com

...



http://freeweb.aspide.it/freeweb/thecodersprimer/
Grazie mille
Massimo Lauria -> 
maxg...@nettaxi.com

Newsgroup: it.comp.lang.c
Titolo: Banalezza

Qualcuno sa dirmi se questa banalita` 
char *MMS_DATE()
{
    static char result[12];
    time_t systime;
    struct tm *timenow;
    systime = time(NULL);
    timenow = localtime(&systime);
    strftime(result, 12, "%y%m%d", timenow);
    return result;
}
Compila anche sotto Solaris?
alessand...@usa.net
 -  
http://users.iol.it/alessandro.carini/
  -  pgp key available

Compila anche sotto Solaris?
Se ha un compilatore ANSI C si, visto che le funzioni usate sono tutte ansi.
A proposito, non ci starebbe male un #include <time.h>..... ;-)
-- 
Warning!
Don't send any mail for me at my from: or replayto: addresses ;
I just kill the mail over there without reading!

Newsgroup: it.comp.lang.c
Titolo: Output colorato

Salve, 
devo  creare  un programmino  per  console  su  piattaforma Win32  e  mi
piacerebbe poter gestire l'output evidenziandolo  con dei colori. Non mi
sembra pero' che le librerie standard permettano questo, putroppo.
Esiste un modo per risolvere la  questione, senza far ricorso a librerie
esterne allo standard ?
-- 
Filippo Panessa A.K.A. Kalem
fpanessa (at) tiscalinet (dot) it 
http://web.tiscalinet.it/kalem

esterne allo standard ?
Se abiliti, tramite config.sys, il driver ANSI.SYS, puoi utilizzare le
sequenze escape che si usano anche in Linux.
Nota che non si tratta di librerie esterne, il tuo programma resta
perfettamente standard e portabile (al massimo, rischi che in output
compaia qualche carattere strano).
-- 
Saluti,
    Mardy

Già le librerie standard non permettono ciò in quanto per fare questo
le librerie standard usano le sequenze di comandi ANSI. Però siccome
tu vuoi fare il tutto per consolle in ambiente win32 col linguaggio C
hai a disposizione la libreria non standard conio.h
che ti mette a disposizione le funzioni textcolor(int) e
textbackground(int), textattr(int), clrscr(void), cprintf(char *,
.....) e altre funzioni per gestire i colori.
ciao
cod

 hai a disposizione la libreria non standard conio.h
Ciao a tutti, scusate se mi intrometto, ma quanto richiesto da Filippo 
assomiglia molto (credo) a quello che sto cercando di risolvere da tempo, 
ma purtroppo non me ne intendo molto.
In poche parole, non so come si fa e se sia possibile "adornare" le 
applicazioni scritte in C (per console in ambiente win32) con della 
grafica minima, anche primitiva, purche' consenta la visualizzazione di 
grafi (piano cartesiano) di varie funzioni (va bene anche grafica ridotta 
all'osso, servono solo linee-curve).
Forse mi servono delle librerie apposite (Quali?)?
Ciao e grazie per l'eventuale reply.
Gigi_la_Trottola
Newsgroup: it.comp.lang.c
Titolo: come disegnare un punto

Vorrei disegnare dei punti assegnando loro delle coordinate.
Come si fa in C a disegnare un punto in un piano?
Grazie e ciao
Christian

> Come si fa in C a disegnare un punto in un piano?
 Non in modo standard! Esistono varie librerie per questo.
Per esempio se lavori sotto dos puoi fare riferimento alla libreria dislin
oppure se lavori sotto windows fai riferimento alle mfc...per linux non so
(forse le gtk? oppure dislin?)

 
ciao
se usi Borland C++ 4.52 e lavori sotto DOS devi fare un progetto 
includendo la libreria standard <graphics.h> e utilizzare le funzioni
putpixel(x,y,color) e getpixel(x,y).

Newsgroup: it.comp.lang.c
Titolo: Aiuto puntatori e strutture

Salve, devo fare un esercizio ma mi sto incazzando una cifra:
questo sotto è la prova dell'esercizio, non è finito ancora però volevo
vedere se acquisiva:
#include<stdio.h>
#include<conio.h>
struct data{
 int giorno;
 int mese;
 int anno;
};
void inserimento(struct data *ogg);
void main(){
 inserimento(po);
 struct data compleanno,oggi,*pc,*po;
 po=&oggi;
 pc=&compleanno;
}
void inserimento(struct data *ogg){
 printf("Inserisci la data di oggi: ");
 scanf("%d",&ogg->giorno);
 }
mi da errore: error C2065: 'po' : undeclared identifier
questo errore me lo segnala alla chiamata alla funzione, perchè mi da questo
errore, anche se provo a mettere il puntatore globale come istanza mi da
errore.

  struct data compleanno,oggi,*pc,*po;
Prova così:
int main()
{
   struct data po;
  inserimento(&po);
...................................
Se funziona medita sui tuoi errori sennò insultami
(il senso é che prima di usare devi dichiarare...)

 }
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
"Su cio` di cui non si puo` parlare e` bene tacere".
 Ludwig Wittgenstein


I'm not prejudiced, I hate everyone equally.
Newsgroup: it.comp.lang.c
Titolo: Dubbio: Somma con possibile overflow

Salve a tutti,
sto scrivendo un programma in C e ho un dubbio.
Vorrei capire come si comporta il compilatore quando traduce la
seguente espressione:
----------------------------------------------------------------------------------------------------------------------
unsigned char A;
unsigned char B;
unsigned short TOTALE;
....
TOTALE = (unsigned short) (A + B);   /* espressione con possibile
overflow */
....
----------------------------------------------------------------------------------------------------------------------
Se A = 200 e B = 200, puo' nascere un overflow.
Risposta 1
---------------
- Le variabili A e B vengono castate ad unsigned short
- Viene effettuata la somma e memorizzata in un unsigned short
- La somma viene copiata nella variabile TOTALE
Risposta 2
---------------
- Le variabili A e B vengono sommate com unsigned char
- La somma viene castata ad unsigned char
- La somma viene copiata nella variabile TOTALE
Grazie per l'aiuto
Enrico
P.S.
Un saluto ad Andrea La Forgia che non conosco personalmente, ma posso
garantire che conosce molto bene il C e la libreria standard.


Saluti anche da parte mia

 overflow */
Dato che il cast lo fai sul risultato e non sulle singole variabili, direi 
che prima viene fatta la somma A+B, con wrap-around (non c'e' overflow 
perche' le variabili sono unsigned), e poi viene castata a short (ma a quel 
punto il wrap around c'e' gia' stato).
Quindi: 200+200 ti da' 144.
Pleg

 Quindi: 200+200 ti da' 144.
Hai verificato?  Perché non è quello che dice lo standard.
La promozione corretta avviene anche se non ci fosse il cast.
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   < 
http://giovanni.homelinux.net/
 >

 La promozione corretta avviene anche se non ci fosse il cast.
Hai ragione, fa cosi'.
Pleg

Newsgroup: it.comp.lang.c
Titolo: Tempesta di Deus Ex

Salve a tutti!
Come già detto in un'altra lettera, sono impegnato in diversi progetti. Mi
servirebbe il codice per simulare le scariche elettriche dei fulmini (mi
vanno bene simili a quelle dell'intro di Deus Ex) con le OpenGL ma non so
proprio dove andare a prenderlo! Ringrazio per la collaborazione, tutti
quelli che mi aiuteranno nelle ricerce. Salve!
Gli Dei e gli Asi siano Veco!

Innanzi tutto, dato che hai parlato di OpenGL,
ti conviene chiedere in un gruppo di programmazione per il sistema
operativo che intendi utilizzare..
Se e' Windows
it.comp.programmare.win32
Ciao.
Ph.
Newsgroup: it.comp.lang.c
Titolo: Array di funzioni

Ciao,
avrei un quesito a cui finora non sono riuscito a rispondere con le mie
sole forze:
la mia intenzione sarebbe creare un array di funzioni in questa maniera
(so che l'esempio è sbagliato e non è compilabile, ma è per dare
un'idea):
/* avevo pensato ai #define */
#define        foo[0](int x, int y)        (x+y)
#define        foo[1](int x, int y)        (x-y)
#define        foo[2](int x, int y)        (x*y)
#define        foo[3](int x, int y)        (x/y)
int main()
{
    int i;
    int a = 6;
    int b = 3;
    for (i=0; i<4; i++)
        printf("%d\n", foo[i](a, b));
}
/* fine esempio */
lo so che così non va proprio, ma io avrei bisogno di un sistema
concettualmente simile e rapido visto che devo dichiarare più di 200
funzioni diverse, e non posso chiamarle "foo1()", "foo2()", "foo3()",
ecc... e usare una valanga di condizioni per usare quella giusta in
base a un valore ("i" nell'esempio).
L'unica che mi è venuta in mente è:
int foo(int i, int x, int y)
{
    switch(i)
    {
        case 0:
            return (x+y);
        case 1:
            return (x-y);
        case 2:
            return (x+y);
        ecc... ecc...
    }
}
ma volevo sapere se è possibile usare il preprocessore e un array di
funzioni per ottenere lo stesso scopo in maniera più veloce (ed
evitando condizioni quali switch, if, ecc...).
Ciao e grazie per l'attenzione!

 la mia intenzione sarebbe creare un array di funzioni in questa maniera
Qualcosa del genere?
#include <stdio.h>
int f1(int a, int b) { return a + b; }
int f2(int a, int b) { return a - b; }
int resolve(int (*f)(int, int), int a, int b) {
        printf("Risultato: %d\n", f(a, b));
}
int main(int argc, char *argv[]) {
        void *v[] = { f1, f2 };
        int i, a = 8, b = 2;
 
        for(i = 0; i < 2; i++) {
                resolve(v[i], a, b);
        }
        return 0;
}
pero' se le funzioni hanno parametri diversi... :? crea funzioni che
accettano un paramento puntatore a void (che con un puntatore puoi passare
un intero sistema operativo :)
Ciao, spero di esserti stato utile.
David

 Ciao e grazie per l'attenzione!
Ciao, cosě ti puň andar bene?
#include "stdio.h"
void main(void);
int foo1(void);
int foo2(void);
int foo3(void);
void main()
{
     static int ((*fooA[])(void)) =
     {
          foo1,
          foo2,
          foo3
     };
 int Nfoo = sizeof(fooA) / sizeof(fooA[0]);
 int i;
 for(i = 0; i < Nfoo; i++)
     printf("%d\n",fooA[i]());
}
int foo1()
{
     return 1;
}
int foo2()
{
     return 2;
}
int foo3()
{
     return 3;
} 

Perdono, non avevo ancora visualizzato la tua risposta. La mia č simile. 

Grazie mille a tutti, era proprio quello di cui avevo bisogno!!!
Non avevo pensato ad un array di puntatori a funzioni (e non sarei
comunque stato in grado di pensare il tutto in maniera così elegante).
Grazie ancora, farò tesoro di ciò che ho appena appreso :-)))
Newsgroup: it.comp.lang.c
Titolo: arrotondare un double

Qualcuno sa dirmi come fare ad arrotondare un double con n-decimali eliminando tutti i decimali che non mi servono.
Ad esempio 10.356285 arrotondato a 3 decimali dovrebbe essere  10.35600000 (con n-zero a seguire) il compilatore invece ritorna un numero simile a 10.3560000000200000. Perche' ????
Grazie per una soluzione.


Vedi se questo può andarti bene:
#include <stdio.h>
#include <string.h>
double dround( double num, int prec )
{
    char s[ 100 ];
    char *p;
    sprintf( s, "%.10f", num );
    p = strchr( s, '.' );
    p[ prec + 1 ] = '\0';
    sscanf( s, "%lf", &num );
    return num;
}
int main()
{
    int i;
    for ( i = 0; i <= 8; ++i )
        printf( "%.10f\n", dround( 123.12345678, i ) );
    return 0;
}
EMG

ritorna un numero simile a 10.3560000000200000. Perche' ????
Il fenomeno si chiama "round-off" ed e' del tutto normale.
I numeri reali in un computer vengono "rappresentati".
E' come se tu osservassi su un quadro un paesaggio e ti accorgessi che
alla donnina che si affaccia alla finestra di un piccolo balcone, su
un centimetro quadrato di tela, manca il naso.
Allo stesso modo, i numeri reali, essendo rappresentati in uno spazio
ristretto di memoria, subiscono perdite di precisione.
--
Andrea Laforgia (ICQ 87230455)
http://www.geocities.com/AndreaLaforgia
"ci sono tre tipi di persone nel mondo : quelli che
 sono bravi in matematica e quelli che non lo sono."

 un centimetro quadrato di tela, manca il naso.
Non l'avevo mai vista in questo modo... pero' e' poco poetico, la donnina
senza naso, intendo ;-)
-- 
 Ciao, Bianco.
 Reply to luca.bianco (at) 
tiscalinet.it

senza naso, intendo ;-)
Ho citato apposta la "donnina", non avrei voluto privare l'"omino" di
qualcos'altro :)


 qualcos'altro :)
ROTFL!


 wrote in message
kmgj6tg6q54mcbs2c...@4ax.com...

Newsgroup: it.comp.lang.c
Titolo: Tradurre progetto OO in C

Salve,
    ho un piccolo progetto Object Oriented che vorrei tradurre in C. Mi
interessa sapere se esistono degli articoli o delle tecniche riguardanti la
traduzione di alcuni concetti OO in C.
Grazie
Gabriele



A quanto mi risulta il C non è OO, quindi penso ti convenga pasare al
C++.
--
Rhymes - 
rhy...@myself.com
http://www.foxhound-games.it
"Sapete cosa fa un InputStream quando
gli si racconta una barzelletta? Reader..."

 C++.
 
Oppure all'Objective-C, se vuole rimanere sul C.
Bye,
 Emmanuele.
-- 
I ... Owe ... You ... Pain! -- Willow, "Tough Love"
Italian Buffy Resource Site (Beta) - 
http://www.ibrs.f2s.com
GnuPG Key ID: 0x788E3A3A
GnuPG Key FP: 4DD0 C90D 4070 F071 5738  08BD 8ECC DB8F A432 0FF4

Oppure all'Objective-C, se vuole rimanere sul C.
... pppure lo fai in C standard come hanno fatto per le GTK
(
www.gtk.org
).
Per chi non lo sapesse l'OOP e' un paradigma di programmazione,
applicabile a qualunque linguaggio di programmazione.
Tanto per fare 1 esempio le ADT sono una cosa che si avvicina molto
alle classi e alla fin fine sono solo delle struct gestibili da utente
attraverso funzioni apposite.
Esistono in rete molti testi che parlano di OOP in C, tutti quelli che
ho trovato pero' parlavano di concetti basilari (far puntare i metodi
all'oggetto, tenere un contatore dei riferimenti all'oggetto).
L'unico posto in cui ho trovato 1'implementazione completa e' ben
destritta delle classi e' appunto per le GTK (dovrebbe esistere anche
un libro in PDF che ne parla).
Non voglio consigliarti di farlo in C, anche perche' il lavoro e' un
po' complesso, voglio solo far notare che in C e' possibile e a meno
di non voler implementare concetti relativamente complessi come
abstract e virtual facilmente implementabili.
Un progetto in C creato pensando in un'ottica OO poi e' molto piu'
mantenibile e chiaro.
Paolo (che ora sta litigando con la macchina di Turing :) )
Newsgroup: it.comp.lang.c
Titolo: problema !!!

il seguente codice:
#include <stdio.h>
class pazienti
{
private:
 struct paziente
 {
  char nome [30];
  char cognome [30];
  int pagamento, fare, fatto;
 };
 paziente coda [30];
 int t, c;
public:
 paziente nuovo;
 int inserimento ();
 int estrazione ();
}
coda_pazienti (); // ricordarsi sempre di mettere il constructor, il 
costruttore, poiche' permette di preparare l'oggetto classe al suo utilizzo 
//
// dichiarazione prototipi //
void arrivo (void);
void main ()
{
 int scelta;
 do{
  printf ("\n        *** Programma Laboratorio Ecografie / Radiografie 
***\n\n\t1) Arrivo di un nuovo paziente\n\t2) Uscita da radiografia\n\t3) 
Uscita da ecografia\n\t4) Uscita da pagamento\n\t5) Uscita dal programma");
  printf ("\n\n\tSeleziona comando di menu'\t");
  scanf ("%d",&scelta);
  switch (scelta)
  {
  case 1:  // arrivo di un paziente //
   arrivo ();
   break;
  case 2:
   break;
  case 3:
   break;
  case 4:
   break;
  case 5:
   printf ("\n\tIl programma e' terminato !!!\n\tGrazie per averlo usato 
!!!\n\n\t");
   break;
  case 6: // inserimento prezzi //
   break;
  default:
   printf ("\n\tHai sbagliato, per favore reinserisci\n");
   break;
  }
 }
 while (scelta!=5);
}
void arrivo (void)
{
 printf ("Inserisci nome");
 scanf ("%s",nuovo.nome);
 printf ("Inserisci cognome");
 scanf ("%s",nuovo.cognome);
}
mi da questo errore che non so spiegarmi...
Compiling...
lab.cpp
C:\Programmi\Microsoft Visual 
Studio\MyProjects\laboratorio_medico\lab.cpp(60) : error C2065: 'nuovo' : 
undeclared identifier
C:\Programmi\Microsoft Visual 
Studio\MyProjects\laboratorio_medico\lab.cpp(60) : error C2228: left of 
'.nome' must have class/struct/union type
C:\Programmi\Microsoft Visual 
Studio\MyProjects\laboratorio_medico\lab.cpp(63) : error C2228: left of 
'.cognome' must have class/struct/union type
come se la struct nuovo non esistesse, invece c'e' e' nella classe e' ed 
public... come mai mi da' errore ? 

 class pazienti
Hai sbagliato gruppo. Questo e' per il C. Tu volevi postare
nel gruppo per il C++, che si chiama appunto
it.comp.lang.c++
ciao,
g.

Newsgroup: it.comp.lang.c
Titolo: Salvare strutture

Salve, se ho una struttura tipo questa:
typedef struct{
    char nome[30];
    char cognome[30];
    char telefono[15];
} amico;
e volessi salvare una variabile di questo tipo su disco come dovrei fare?
Devo per forza accedere a tutti gli elementi e salvarli uno per volta? E se
poi volessi ampliare la struttura, dovrei riscrivermi la funzione che salva
il mio "amico"?
O esiste una funzione predefinita che fa tutto automaticamente?
Grazie, ciao.


Ciao Re Di Cuori


Potresti utilizzare la fwrite() ma scrivere i dati su un file in formato
binario potrebbe non essere una buona idea riguardo la portabilità dello
stesso.
EMG


Vedi le funzioni fwrite(....) e fread(....) usando per size sizeof(amico).
HTH
Newsgroup: it.comp.lang.c
Titolo: Puntatori a puntatori

Cioč ho capito come funzionano, ma non ho ben capito il motivo per 
usarli....
Grazie ciao

 wrote in message news:3E808AD...@hl.com...


Merlino wrote:

Un array di puntatori a funzioni (un vettore di interrupt ;-) č un puntatore 
a puntatori, ed č solo uno dei tanti esempi.
-- 
The only difference between a problem and a solution is that people 
understand
the solution.
                -- Charles F. Kettering

 usarli....
Per esempio quando devi modificare all'interno della funzione il valore di 
un puntatore.
char *p;
function modifica_valore_di_p (char **p);
In genere hanno senso 2 o 3 livelli di deferenziamento.
-- 
Mox
"Trust the programmer."
"Don't prevent the programmer from doing what needs to be done."
"Keep the language small and simple."
"Provide only one way to do an operation."

Grazie... più o meno ho capito, cioè teoricamente si, ma non riesco ad 
immaginarmi un modo per utilizzarli.
Forse è per esperti.

 Forse č per esperti.
Allocare matrici dinamicamente.
Passare puntatori da modificare (leggi bene, non č semplice da capire -
in pratica permettere ad una funzione di modificare a cosa punta il
puntatore)
-- 
Andrea Bergia - studente              Linux Registred User #281550
"The one thing we're all waiting for, is peace on Earth and an end to
war,
it's a miracle we need, the miracle, the miracle, 
Peace on earth and end to war today,
That time will come one day you'll see when we can all be friends"
Newsgroup: it.comp.lang.c
Titolo: La prima volta in C# - Aiuto !!!!

Devo modificare un programma scritto in c# che gestisce un joystick. Quando 
si preme uno dei pulsanti deve partire una chiamata WebRequest tipo questa:
WebRequest request = 
WebRequest.Create("
http://192.168.1.15:9002/axis-cgi/admin/restart.cgi
");
Il costruttore del joystick fornisce i sorgenti e i file di progetto in 
Microsoft Visual C#. Premesso che non ho mai programmato in c# prima d'ora, 
mi sono scaricato ed installato la versione Express Edition dal sito 
Microsoft. Riesco a compilare il programma originale, ma se aggiungo la riga 
di cui sopra non trova i riferimenti a WebRequest.
Immagino si debba aggiungere la classe relativa che, cercando in rete, pare 
trovarsi in System.Net che vedo tra i riferimenti del progetto ma nonostante 
ciņ continuo a ricevere il messaggio di errore "Il nome 'Web Request' non 
esiste nel contesto corrente".
Dove sto sbagliando ?
Grazie per l'aiuto.
Mik 


nel postare su it.comp.lang.c - cerca un NG di C#!
Ciao!

 Ciao!
Grazie per la risposta. Non so neppure come si pronunci, in 
news.tin.it
 non 
c'è nulla con C#. Comunque provo a cercare, grazie di nuovo. 


c sharp.
Ciao Jack

a parte che non è il gruppo adatto...
webrequest mi sa di 
asp.net
 e non capisco cosa c'entri quindi:
a) il joystick
b) il visual c# express (che è per fare applicazioni desktop)
stai sviluppando qualcosa in silverligth forse?
oppure un applicazione che deve aprire un pagina web....
mah
comunque prova a chiedere su:
microsoft.public.it.dotnet.csharp


A livello desktop con una comoda interfaccia grafica si imposta l' IP della 
telecamera, la sensibilita' del joystick, il preset dei pulsanti ....
Comunque ho risolto, non era sufficiente includere la classe System.Net al 
progetto, bisognava anche aggiungere la riga di codice:
using System.Net;
Scontato forse per chi ci programma abitualmente....ma io non lo sapevo.
Mi spiace di essere stato OT, spero comunque che la soluzione (per quanto 
banale) possa servire ad altri.
Saluti.
Mik
P.S. OT per OT. Non e' odioso come il vecchio visual c++ 6.0 che usavo 10-15 
anni fa, comunque anche questo c# ci va vicino. Bah, sara' la mia solita 
rigidita' mentale da over 40 cresciuto con il basic che tende ad essere 
allergico alle strutture ad oggetti.
Newsgroup: it.comp.lang.c
Titolo: meglio il kerningam-ritchie o il kelley-pohl ?

ho entrambi i libri e voglio imparare ... so che mi direte di usarli
entrambi ... ma mi perdo saltando da uno all'altro!
Quale mi consigliate per primo al massimo ?
thanx

  thanx
ciao ...
-- 
#include <stdio.h>
int main(void){char c[]={10,65,110,116,111,110,105,111,32,98,97,114,98,111,110,
101,32,60,104,105,110,100,101,109,105,116,64,116,105,115,99,97,108,105,110,101,
116,46,105,116,62,10,10,0};printf("%s",c);return 0;}

 entrambi ... ma mi perdo saltando da uno all'altro!
   ROLF!
   Metti gli indici dei due libri a confronti e, per gli argomenti 
uguali, leggi i relativi capitoli (a turno, per una volta prima quello 
del K&R, per l'altra prima quello del K&P). Poi, leggi i capitoli 
restanti secondo l'ordine che ti si e` nel frattempo formato nella 
capoccetta.
   Mai preparato un esame universitario? E poi dicono che l'universita` 
non serve... :)
-- 
Alla prossima,
Marco

Ho provato a fare anche io cosě tra D&D e K&R...un disastro! Uno metteva in
un capitolo cose che ancora con l'altro non avevo fatto. Cosě mi ritrovavo a
studiare ad esempio if/else col D&D dove ancora non ha parlato di vettori,
andavo sul K&R a studiare if/else e mi ritrovavo di mezzo i vettori...
Non sempre si puň fare cosě.

Newsgroup: it.comp.lang.c
Titolo: determinare un numero pari

Salve a tutti vorrei sapere come scrivere un programma di questo tipo:
#include <stdio.h>
main()
{
int i;
printf("Dammi un intero: ");
scanf("%d", &i);
'istruzione che vorrei mi spiegaste':
 if i = numero pari
... fai qualcosa
else
... fai qualcosa d'altro
scusate la banalità ma non sono riuscito a trovarlo sul manuale

  if i = numero pari
[cut]
if ( i % 2 == 0)
    numero pari

if (x&1) {
        dispari
}
-- 
Davide Cittaro
Drop WINDOWS if you want to reply

Newsgroup: it.comp.lang.c
Titolo: Domanda

Esiste un sito dove scaricare il C?

 ha scritto nel messaggio
news:9f94d9$q5i$1...@nreadA.inwind.it...


Esiste un sito dove scaricare il C?
Se intendi un compilatore ("C" e' il nome del linguaggio), ce ne sono
quanti ne vuoi. 
Dai un'occhiata a : 
www.delorie.com/djgpp/
 
www.borland.com
Newsgroup: it.comp.lang.c
Titolo: ancora DJGPP

Ho letto molti messaggi che consigliano di utilizzare il DJGPP. Prima di
scaricare il programma vorrei chiedere qualche chiarimento.
Quando dite che funziona sotto DOS intendete dire che si possono realizzare
soltanto programmi sotto DOS ? (ma io ho visto che esistono anche librerie
per XWindows). Oppure intendete dire che l'ambiente di sviluppo è sotto DOS?
Ma esiste un ambiente di svuluppo oppure è un compilatore a linea di
comando?
Sinceramente io trovo che il Visual C++ sia il più comodo in assoluto. Certo
non è indicato per programmare interfacce per Linux, ma se il programma deve
essere per Windows non vedo perchè dovrei utilizzare un altro compilatore.
Se con il DJCPP è possibile anche programmare interfacce per Windows quali
sono le piattaforme supportate: Win16, Win32, Win64 ?
Marco

> sono le piattaforme supportate: Win16, Win32, Win64 ?
Che io sappia Win64 non è ancora supportata neanche da MS :)
Per il resto io ho capito che non è supportato windows.
Che poi si possa lo stesso farlo con opportune librerie e le oppurtune
definizioni (windows.h) è tutto da scorpire.
--
Alessandro Monti

Che io sappia Win64 non è ancora supportata neanche da MS :)
Non sono ancora riuscito a scaricare lo SDK dal sito della Microsoft :-((,
però mi sembra di aver letto che comprende anche le nuove Win64.

 però mi sembra di aver letto che comprende anche le nuove Win64.
In questo caso vale il "non lo sapevo" :)
Ho letto però che MS abbia qualche problemuccio con gli indirizzamenti di
memoria>64bit con NT, e che ha preparato un SuperHimem per l'occorrenza.
Ovviamente occorre avere 4Gb di RAM per accorgersene. (ancora qualche anno)
--
Alessandro Monti
Newsgroup: it.comp.lang.c
Titolo: editor in ambiente unix

Buongiorno a tutti:
quale potrebbe essere un editor per programmare (in C) in
ambiente Linux (Ubuntu)?
Qualcosa che assomigli a PSPad, tanto per intenderci.
Grazie per i suggerimenti
S.
-- 
Postato da Virgilio Newsgroup: lo usi da web ma con le funzioni del newsreader 
http://newsgroup.virgilio.it
Gerarchie it, italia, it-alt, tin, it.binari. Unico!

 S.
Esiste un solo editor degno di questo nome: vi
Se vuoi qualcosa di più avanzato puoi provare vim
Ciao!

 Se vuoi qualcosa di pi� avanzato puoi provare vim
LOL! Pero' son d'accordo....
d



Anch'io sono un 'affezionato' di vi(m), ma ad onor del vero in UNIX ci
sono diversi editor con cui potresti lavorare; emacs e' uno di questi.
Emacs e vi(m) tuttavia necessitano di tanta pratica prima di poter
utilizzarli al meglio, e questo e' innegabile; hanno anche versione
con le corrispettive GUI, Xemacs e Gvim.
Comunque, oltre ai due su citati, c'è kate (KDE) che e' molto
migliorato nel corso degli anni, oggi peraltro gode di un'ampia scelta
di plugin, ed e' ampiamente custmomizzabile; c'e' Gedit (Gnome), meno
pretenzioso.
E tanti tanti altri, citarli tutti sarebbe davvero un'impresa.
Un consiglio, scegli una delle due religioni, o emacs o vi(m), impara
al meglio uno dei due e vivrai felice.

 S.
"vi" ed "emacs" sono nati come strumenti indispensabili
per i programmatori quando non esisteva il mouse.
Ho usato Vi(M) per tanto tempo, e l'ho adorato.
Ma se non sei costretto a programmare su terminale
usa Gedit, semplice, pulito e bello. CodeLite,
per le rifiniture (indentazione, ecc...).
Eclipse è eccellente e ti permette anche di 'navigare'
gli headers della libreria standard, con finestre
apposite che raccolgono le dichiarazioni di prototipi
e variabili senza che li debba cercare tu linea per
linea (cosa non da poco).
Ciao!
-- 
Vincenzo Mercuri

 Grazie per i suggerimenti
Segnalerei anche questo:
http://www.nedit.org/
E' passato molto tempo e lo usavo per scrivere codice Verilog e non C
ma mi ero trovato molto bene.

Newsgroup: it.comp.lang.c
Titolo: Programma

 `
Non avresti il codice macchina da spedire, magari li ci si capisce qualcosa :)
--
Posted from 
laguna.tiscalinet.it
 [195.130.224.86]
via Mailgate.ORG Server - 
http://www.mailgate.org

 
Non mandare allegati, posta il codice inline.
 Ciao, Luca.
 Reply to 
luca....@tiscalinet.it
Newsgroup: it.comp.lang.c
Titolo: Esercizi in C (Kernighan-Ritchie)

Non riesco a risolvere questi due esercizi tratti dal libro "Il linguaggio
C" di Kernighan-Ritchie (capitolo 1, Sigh!!!).
C'è qualcuno che può darmi una mano o indicarmi qualche testo che contenga
le soluzioni degli esercizi proposti dal Kernigham?
Un saluto e grazie
Es. 1-20: Scrivete un programma "detab" che sostituisca le stringhe di
caratteri bianchi con un numero di spazi tali da raggiungere il successivo
tab stop (Cosa diavolo sono i tab stop?!?).
Assumete di avere un insieme fissato di tab stop, diciamo ogni n colonne, n
dovrebbe essere una variabile o una costante simbolica?
Es. 1-21: Scrivete un programma "etab" che sostituisca la stringhe di
caratteri bianchi con il minimo numero di caratteri di tabulazione e di
spazi necessari a raggiungere la stessa spaziatura data in input. Usate gli
stessi tab stop del programma "detab".
Quando per raggiungere un tab stop basta un solo carattere di tabulazione o
un solo spazio quale fra i due caratteri è preferibile usare?

...

Per caso sei all'Università?
comunque, trova il libro "LINGUAGGIO C il libro delle soluzioni" della
JACKSON LIBRI e hai risolto i tuoi problemi.

stessi tab stop del programma "detab".
Questo esercizio invece consiste nell'encoding-tab, ovvero nell'operazione
contraria a quella precedente.
Ovviamente il numero di caratteri di tabulazione sara' il risultato intero della
divisione tra la lunghezza in caratteri bianchi della stringa e n, mentre il
numero di spazi bianchi e' dato dal resto della stessa divisione.
Ma la sostituzione dovrai farla analizzando carattere per carattere.
Credo, almeno, sia questo lo scopo del libro.
Andrea Laforgia
-------------------------------------
(grattatio pallarum omnia mala fugit)

JACKSON LIBRI e hai risolto i tuoi problemi.
Ma cosi' e' come correre al'ultima pagina della Settimana Enigmistica per vedere
cosa esce unendo i puntini !!! ;)


...


"LINGUAGGIO C il libro delle soluzioni"
JACKSON LIBRI
Clovis L. Tondo
Scott E. Gimpel
Lire 32.000
Al sito della Jackson puoi trovare più informazioni
www.futura-ge.com
Comunque penso che Andrea abbia ragione, prova a risolvere tu il problema,
se non riesci allora aiutati con il libro.
Per Andrea:
ma sei un insegnante di Latino o cosa?
Almeno questa volta rispondimi!
L'indirizzo lo sai.


la jackson ha in catalogo il testo "linguaggio c,il libro delle
soluzioni" di clovis-scott a lire 32000.Il testo fornisce le soluzioni
a tuuti gli esercizi proposti dal testo di kernighan,Ritchie seconda
edizione.Buon lavoro.
Newsgroup: it.comp.lang.c
Titolo: Compilatore per Mac

Salve a tutti
Ammetto di non aver riletto il manifesto del newsgroup, e spero che la mia
richiesta non sia OT...
A una mia amica, causa obblighi scolastici, serve compilare del codice C su
piattaforma macintosh. Ci sono dei compilatori per mac totalmente free o che
per lo meno permettano di compilare ed eseguire i semplici programmini che
si possono fare in una laurea di economia ? Oppure è più conveniente
utilizzare un emulatore windows (e se sì, quale) e installare un dev-cpp, o
un compilatore borland ? A scuola fanno usare LCC, che francamente non ho
mai usato. Insomma, qualcuno sa suggerirmi una buona soluzione ?
'sera lietissima, Marco

 su piattaforma macintosh. 
Forse c'e' il gcc - 
http://gcc.gnu.org/
-- 
Qualsiasi - Linux registered user #312318 on #198439
"We all know Linux is great...it does infinite loops in 5 seconds." Torvalds
http://www.gnu.org/philosophy/no-word-attachments.it.html


Se la tua amica usa MacOSX allora sicuramente c'e'.
Devi scaricare (gratuitamente) i Developer Tools dal sito Apple.

Newsgroup: it.comp.lang.c
Titolo: ansi c99, _Bool e bool

Entrambi definiscono il tipo di dato booleano, ma non ho capito una cosa:
sono sinonimi e li si possono utilizzare scambievolmente? O uno dei due è
disponibile solo se si include stdbool.h?

 disponibile solo se si include stdbool.h?
_Bool č un tipo, bool č una macro definita in <stdbool.h> che vale _Bool.
Quindi sono identici. Io userei sempre bool, perché č piů bellino e
soprattutto perché <stdbool.h> definisce anche le macro true e false.
--
Cingar
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it
Newsgroup: it.comp.lang.c
Titolo: Lettura a linee su C

Vorrei sapere se esiste un modo per leggere un file (tramite le system
call di UNIX) una riga alla volta per scriverla poi in un array di
caratteri (stringa).. In pratica una equivalente della readLine() di
java..
Qualcuno può aiutarmi???
Grazie
Berto

Se non erro fgets() legge una riga per volta (n-1 caratteri credo)
char *fgets( char *s, int n, FILE *fp );

funziona!!! L'unico inconveniente è che devo aprire il file con la fopen e
non posso usare le System Call di UNIX visto che mi resituiscono un file
descriptor e non un puntatore a file!!!
Thx!
"kikko" <send...@here.lol> ha scritto nel messaggio
news:4cJAb.169691$hV.62...@news2.tin.it...


beh aprire un file con fopen() nn è cosi orribile :)
if(!(myFile = fopen("nomefile", "r")))
abort();
L'unicp rob di fgets() (se nn ricordo male) è rischiare di trovarsi una riga
con piu di n-1 caratteri

 Thx!
Beh, se ti servono le syscall UNIX qui sei OT, prova su 
it.comp.os.linux.development
Anyway, mi pare che offrano solo write() per la lettura: d'altronde, 
tutte le belle funzioni di stdio non le hanno inventate per duplicare 
qualcosa che c'era gia'... ;)
-- 
/**
  * Mattia Belletti - Undergraduate student @ 
cs.unibo.it
  * ICQ: 33292311   - email: 
mbel...@cs.unibo.it
  * IRC: BluShine   - site(s): 
http://cs.unibo.it/~mbellett
  * Linux registered user 299762 @ Linux registered machine 213003
  */

 con piu di n-1 caratteri
Scusate, forse dico un assurdita', ma leggere carattere per carattere fino
a che non si trova il carattere "\n" non potrebbe fungere? In questo modo
ottengo solamente i caratteri di cui e' composta effettivamente la riga.
O no?
Ciao.

 O no?
Si', funziona :)
Giusto che magari non e' il sistema piu' ottimizzato. Ma direi che non 
e' il caso di fare troppo i pignoli :P


 con piu di n-1 caratteri
Infatti... In "C" non esiste una funzione standard per leggere le linee.
Se vuoi una linea devi ricostruirtela a partire da quanto restituito da
fgets().
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Newsgroup: it.comp.lang.c
Titolo: URGENTE:problema nell'eseguibile

Ho implementato un server http sotto linux ( va bene anche con unix).
Compilo il file server.c con il seguente comando:
gcc -o server server.c e mi crea l'eseguibile server. Lancio il file server
e mi dà il seguente errore:
bash: server: comand not found
Non sapendo molto di linux (l'ho installato ieri) come posso risolvere il
problema?

 wrote in message
news:8kt12s$9vr$1...@lacerta.tiscalinet.it...

Scrivi ./server (oppure, cosa non consigliabile, metti . nella PATH).
Questo, ovviamente, supponendo che server sia nel directory corrente;
se e` altrove, scrivi comunque il suo percorso completo, che so,
/usr/pippo/server o quel che sia.
Comunque questo e` un problema (tipico!-) di Unix/Linux, del tutto
indipendente dal C, per cui qui e` OT e ti conviene invece chiedere
altri chiarimenti su gruppi di linux...
Alex

 wrote in message

Newsgroup: it.comp.lang.c
Titolo: tcp/ip ?

Salve,
chi mi sa dire dove posso trovare le librerie complete per la gestione del
protocollo tcp/ip (in c, ovviamente)?
Grazie da adesso per una risposta.
Cooper

 protocollo tcp/ip (in c, ovviamente)?
   Per quale piattaforma? E se ti poni con attenzione questa domanda, 
subito ti rendi conto che esiste un posto migliore dove richiedere un 
indirizzo per la tua ricerca...
-- 
Alla prossima,
Marco


Se alludi allo spam, chiedo scusa, ma non so dove sussista lo spam dal
momento che ho chiesto una url dove poter trovare qualcosa che ha stretta
attinenza con l'argomento previsto si questo gruppo.
Se invece alludi a un altro newsgroup più specifico, mmmm ok ti chiedo scusa
potresti indicarmelo gentilmente che riformulerò la domanda nel newsgroup
che mi indicherai tu?
Io onestamente non l'ho trovato o non ci ho fatto caso e mi è sfuggito non
so... ma te ne sarei grato se mi daresti ulteriori istruzioni.
Cordialmente,
Cooper

 newsgroup che mi indicherai tu?
it.comp.os.linux.development, la risposta sara': "socket".
Di libreria free multipiattaforma in C per gestire i socket non ne ho ancora 
trovate.
Hit: Gapil (cerca con google e clicka su "Mi sento fortunato").
-- 
Mox
"Trust the programmer."
"Don't prevent the programmer from doing what needs to be done."
"Keep the language small and simple."
"Provide only one way to do an operation."

 Ecco perchč non avevo specificato.
	it.comp.os.linux.development
-- 
Alla prossima,
Marco


Ok grazie, riposterň la domanda in questo newsgroup che mi hai indicato.
Cooper

Newsgroup: it.comp.lang.c
Titolo: Compilatore c++

Ciao a tutti, mi servirebbero un paio di informazioni
1- Ho scaricato il compilatore della Borland TURBO C++ 2.0 ( dal sito
della  stessa Societą), ed ad un punto dell'installazione mi si
blocca, qualcuno ha incontrato lo stesso problema?
2-Vi sarei grato se sapeste digitarmi qualche sito dove scaricare
compilatori C & C++
grazie anticipatamente
Barzan

 compilatori C & C++
da me (TC 2.0 e TC++ 3.0)
-- 
Ciao, gengisdave
http://digilander.iol.it/gengisdave
Linux Registered User    # 198292
Linux Registered Machine # 88280

compilatori C & C++
http://www.delorie.com/djgpp/
Usa lo zip picker per capire quali file scaricare.
Lanugo


Ha me il compilatore non crea nessun problema. Se vuoi, se mi contatti via
mail te lo inviao.
Ciao ciao :-)
estr...@libero.it
estr...@tiscalinet.it
http://web.tiscalinet.it/tempo_libero/index.html

http://www.bloodshed.net