mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c
Titolo: Info sulla programmaz. sockets

Ciao a tutti,
una breve domanda.. anzi un consiglio che vorrei avere per imparare
decentemente la programmazione sui sockets.
Sò che c'è qualche manuale online (Unix programming Network) ma è troppo
breve per impararlo, qualcuno conosce un discreto libro ? magari anche
in Italiano??
grazie mille!
bye

 writes:

Richard W. Stevens
Advanced programming in the Unix environment
Addison-Wesley
E studia un po' di inglese, che ti puo' far solo che bene.
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

 Addison-Wesley
L'APUE è un ottimo testo, ma non tratta i socket. 
Meglio dare un'occhiata a "UNIX Network Programming" dello stesso
autore.
Ciao ciao,
Andrea
-- 
"...Unix, MS-DOS, and Windows NT (also known as the Good, the Bad, and 
 the Ugly)."
(by Matt Welsh)
Newsgroup: it.comp.lang.c
Titolo: Come faccio ad inserire dei dati da input in una matrice?

i dati vengono inseriti così:
4
34 45
3 7 28
23 44 77 12
...
...
...
e io devo metterli in una matrice.
Naturalmente il numero di righe e colonne l'ho già acquisito tramite input,
quindi devo solo mettere sti cavolo di dati nella mia matricetta (in realtà
è una matrice quadrata).

int a[10][10],b,c;
for(b=0;b<10;b++) {
 for(c=0;c<10;c++) scanf("%d",a[b][c]);
}

Newsgroup: it.comp.lang.c
Titolo: File attributes

Buongiorno a tutti, mi potreste segnalare la funzione per recuperare di un
file la data di ultimo utilizzo e la data di ultimo accesso?
Grazie mille e buona giornata.
Alder
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 file la data di ultimo utilizzo e la data di ultimo accesso?
Non esiste una funzione simile in standard C. Devi utilizzarne una 
dipendente dal tuo sistema operativo.
Poiche` questo non e` argomento di discussione in questo ng, dovresti 
rivolgerti ad esempio a it.comp.programmare.win32 (per sistemi Windows) 
o it.comp.os.linux.development (per sistemi GNU/Linux) o insomma ad un 
gruppo riguardante al tuo sistema operativo.
Newsgroup: it.comp.lang.c
Titolo: Due dubbi su fflush()...

Avrei due dubbi su fflush() (non mi sono limitato a provare, perchč magari
il miuo compilatore puņ implementarla in modo particolare, mentre i voglio
sapere cosa dice lo standard...):
1) passando NULL vengono svuotati tutti i buffer di output, o anche quelli
di input?
2) in un file aperto in aggionamenteo (w+, r+, a+), fflush() puņ essere
usato solo dopo una operazione di output (prima di una di input), o č
possibile anche il contrario(so che posso usare ad esempio rewind(), ma mi
interessa sapere se č possibile anche con fflush()...)
Grazie.
--
Marco Iannaccone     
marc...@tin.it
ICQ: 18748121           Tolkien
"I've... seen things you people wouldn't believe. Attack ships on fire off
the shoulder of Orion.
I watched C-beams... glitter in the dark near the Tanhauser Gate. All
those... moments will be lost... in time..., like... tears... in... rain."
FAQ it.comp.lang.c: 
http://www.programmazione.it/linguaggi/c/itcomplangc.htm
FAQ it.comp.lang.c++: 
http://www.programmazione.it/linguaggi/c/lang_faq.htm

interessa sapere se è possibile anche con fflush()...)
In un file aperto in aggiornamento qualsiasi operazione di scrittura
provvede allo svuotamento dei buffer (non solo fflush).
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
-----------------------------------------------------
"There is nothing better for understanding a kangaroo
 than seeing it jump." [D.Grune, C.J.H. Jacobs]
-----------------------------------------------------

 provvede allo svuotamento dei buffer (non solo fflush).
Si, vabbene, ma dopo una operazione di input si può usare fflush()?


 ha scritto nel messaggio
news:8m6bjt$r2o$1...@nslave2.tin.it...


la cui ultima operazione sia stata di output
Per il semplice motivo che le operazioni di output (essendo fflush
definita solo su stream di output) sono le uniche a lasciare in
sospeso dati che necessitano d'essere flushati.
--
Andrea Laforgia
"Nessun linguaggio di programmazione e' perfetto"
                              - Bjarne Stroustrup

provvede allo svuotamento dei buffer (non solo fflush).
A me risulta che non necessariamente dopo aver magari mandato in output ad
esempio un carattere questo venga effettivamente scritto. Non serve appunto
un riposizionamento o un flush, o mangari un newline mandato in output?
Inoltre, un'altra cosa: ,le modalità "r+" e "w+" sono equivalenti dal punto
di vista della scrittura/lettura(lo so che il comportamento è diverso in
caso ad esempio di file inesistente...) E "a+" ha solo di diverso che
all'inizio l'indicatore punta alla fine del file, e per leggere dall'inizio
devo fare sempre un rewind()?
Scusa per tutte queste domande su questi argomenti, ma fin'ora non avevo mai
usato stream di aggiornamento, e ad esempio il K&R non ne parla più di
tanto...
Grazie comunque per le risposte date fin'ora e per la pazienza.

Newsgroup: it.comp.lang.c
Titolo: Lcc Win32

Salve ragazzi sono alcuni mesi che ho iniziato a programmare in C, usando
come compilatore Lcc per windows.Una cosa sola non ho ancora capito, lo so
che presto ma in che modo posso fare dei programmi che non girino solo in
dos ma che abbiano un interfaccia grafica?
E' possibile con lCC?
Purtroppo di inglese non sono molto bravo per cui del manuale non ho capito
nulla.
Grazie a tutti per le risposte
PEO


La grafica non dipende dal compilatore. Se vuoi programmare in grafica
devi usare le libreria grafiche del sistema su cui programmi.
Il metodo piu' diretto e' usare le API di Windows, in tal caso ti
sposti su it.comp.programmare.win32 e li chiedi come fare :)
Mox :)

 ha scritto nel messaggio
news:wn1QPH1Q0SPEg+...@4ax.com...

Grazie del consiglio.
Peo

Newsgroup: it.comp.lang.c
Titolo: Immagini in ansi c!

Come faccio ad inserire un Bitmap (o qualsiasi altro tipo di immagine
in un programma?
io ho usato
putimage (x,y, "nomefile.bmp",COPY_PUT);
ma non mi esce niente...pregasi un aiuto!!



Premetto che, purtroppo, la domanda e' OT. Una rispostina veloce pero'
non te la nego :
la funzione putimage non visualizza un'immagine salvata in un file ma
un'immagine precedentemente catturata con getimage. Il terzo parametro
(quello dove metti il nome del file) deve essere un puntatore alla
zona di memoria dov'e' stata salvata l'immagine catturata
precedentemente. Il C non ha nessuna funzione per visualizzare le
immagini e per farlo ti devi scrivere tu la funzione oppure usare una
libreria esterna. Prova a fare un giro su
http://www.simtel.net/simtel.net/
 e sicuramente troverai qualcosa.
ciao


http://www.simtel.net/simtel.net/
 e sicuramente troverai qualcosa.
Hey, ma che e' la peste, tutti con lo stesso problema ? Comunque
all'indirizzo che ti ha dato Valvern nella sezione dos c troverai quel
che cerchi
Augusto Pucci
Webmaster di Prospektiva On-line
http://www.prospektiva.it

Newsgroup: it.comp.lang.c
Titolo: stampare stringa fino carattere X

                    ho un astringa di lunghezza variabile dovevo identificare un carattere X
all'interno di essa e stampare il contenuto della strringa fino al carattere
cercato come si fa....?
 
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 cercato come si fa....?
Dai, questa è semplicissima! Sforzati m'pò. Qual'è il tuo problema?




#include <stdio.h>
int main(void)
{
    char *s = "pippo@topolino";
    int i;
    for (i=0; s[i] && (s[i] != '@'); i++)
    {
        putchar(s[i]);
    }
    printf("\n");
    return 0;
}
Newsgroup: it.comp.lang.c
Titolo: confusione con puntatori e array 2d

supponiamo:
int arr[10][15];
int *p[10];
int (*v)[10];
arr alloca 10*15 interi
p alloca 10 interi (un array di 10 puntatori)
v alloca un intero come puntatore?? (e' un puntatore a un array di 10 
interi)
supponendo che i tre siano variabili (magari arg di funzioni), e ke i 
puntatori puntino a qualcosa, allora:
**p ritorna il primo elemento a cui punta il primo puntatore dell'array
*(*p+1) ritorna il secondo elemento a cui punta il primo puntatore 
dell'array
se utilizzo arr come p ottengo gli stessi risultati. ma come e' 
possibile? arr alloca solo 10*15 elementi, come e' possibile allora la 
doppia indirection senza l'uso di interi allocati di supporto? infatti p 
sono 10 interi + altri 15 interi o + (lunghezza variabile) per ognuno 
dei 10 interi di p (ogni p punta ad un array).
come mai allora p=arr da' errore su gcc? puntatori incompatibili? 
Inoltre se assegno v=arr funziona, ma ke differenza c'e' tra v e p???? e 
come mai v magicamente puo' effettuare una doppia redirection?
avete dei links su esempi interessanti sui puntatori?
grazie mille
jack

Inoltre se assegno v=arr funziona, ma ke differenza c'e' tra v e p????
Funziona ma ti da per lo meno un warning
il concetto è questo: array[i] = *(array+i)
quindi v puo essere considerato come **cosi come arr, mentre v è un semplice
puntatore

Newsgroup: it.comp.lang.c
Titolo: Licenza GPL2

Salve,
non so se è il posto giusto ma ho un dubbio. Se faccio il link statico 
ad una libreria con licenza GPL2, senza modificarla, poi sono costretto 
a rendere gratuiti anche i sorgenti della mia applicazione (commerciale)?
Grazie!


Non sono esperto, ma di solito le librerie vengono rilasciate sotto 
licenza LGPL per poter essere utilizzate da applicazioni commerciali. Se 
invece la licenza della tua è GPL (ma non so cosa sia GPL2), allora 
forse non puoi usarla.
E.
Newsgroup: it.comp.lang.c
Titolo: indirizzi di puntatori

saluti a tutti.
-------------------------------------
int a=10;
int *p;
p=&a;
printf("stampo l'indirizzo: %d\n",p);
-------------------------------------
guardando questo mio primo esperimento in c (ok, in verita'
il primissimo e' stato hello world), avrete gia' capito cosa
volevo, non riuscendoci, fare.
sarei grato a chiunque mi spiegasse come possa vedere
l'indirizzo della variabile a.
saluti vari a destra e a manca,
andrea gelmini
--
Automatic posted from 
ns.numerica.it
 [194.184.189.10]
via Mailgate Server - 
http://www.mailgate.org

 -------------------------------------
E' tutto ok, tranne il fatto che dovresti ridare un'occhiata alle
specifiche di formato per printf().
Quello che ti occorre č:
printf("...: %p\n", p);
HTH, julio di egidio
ju...@webzone.it

Per sapere l'indirizzo di una variabile devi utilizzare %p e non %d (che
serve per vedere il valore della variabile int):
-------------------------------------
int main(void) {
	int a=10;
	int *p;
	p=&a;
	printf("stampo l'indirizzo: %p\n",p);
/* 
 * printf("stampo l'indirizzo: %p\n",&a);
 * da lo stesso risultato.
 */
	return(0);
}
-------------------------------------
                             /\
  I            \{__}/       /((\
 ;~;           \>@@</        ) )
 | |`\____vvvV__(oo)__Vvvv__(_(_   I
 | |             ``             `\;~;
 ;_;        Luca De Vitis         | |
  I `\__________________________  | |
                 ';;;;;(  )`    `\;_;
                   \ \/ \ \//      I
                  _/_/ _/ /
                 vvvV^ Vvvv

Secondo me e' piu' comoda la stampa dell'indirizzo in esadecimale:
cosi' puoi fare un bel debug eventualmente :))
printf ("The pointer value is: %x\n",ptr);
--
Automatic posted from 
camcic.unicam.it
 [193.204.8.13]

Newsgroup: it.comp.lang.c
Titolo: mysql.h

Cmq devo realizzare un semplice demone che controlla delle tabelle su un db
mysql.
#include <stdio.h>
#include <stdlib.h>
#include <mysql.h>
int main(int argc, char *argv[])
{
return 0;
}
ho provato a compilare queste 4 righe di codice e mi ha restuito la bellezza
di 77 errori:
Building Makefile: "C:\Documents and Settings\jasx\Desktop\prova
c\Makefile.win"
Esecuzione di make...
make.exe -f "C:\Documents and Settings\jasx\Desktop\prova c\Makefile.win"
all
gcc.exe -c main.c -o
main.o -I"C:/Programmi/Sviluppo/Dev-Cpp/include" -I"C:/Programmi/Sviluppo/De
v-Cpp/mysql_include/mysql-3.23.58/include"
In file included from
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql.h:79
,
from main.c:3:
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:117: parse error before "SOCKET"
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:117: warning: no semicolon at end of struct or union
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:132: parse error before '}' token
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:132: warning: data definition has no type or storage class
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:162: parse error before '*' token
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:163: parse error before '*' token
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:164: parse error before '*' token
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:165: parse error before '*' token
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:166: parse error before '*' token
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:167: parse error before '*' token
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:169: parse error before '*' token
C:/Programmi/Sviluppo/Dev-Cpp/mysql_include/mysql-3.23.58/include/mysql_com.
h:170: parse error before '*' token
In file included from main.c:3:
chi mi spiega i passi da fare e le api e lib da includere per poter lavorare
con
mysql ?

 mysql ?
nel mio g++ di linux includo la directory
/usr/include/mysql
dove ci sono tutti gli include di mysql e dopo inserisco la libreria
mysqlclient
buona fortuna
Newsgroup: it.comp.lang.c
Titolo: errore..

mi potreste spiegare che significa questo errore datomi in compilazione?
gcc 2.95 linux slackware
tail.c:10: arithmetic on pointer to an incomplete type
tail.c:26: arithmetic on pointer to an incomplete type
grazie ciaoooooooo

mi potreste spiegare che significa questo errore datomi in compilazione?
Devi postare il codice incriminato...
-- 
The Follet

 
#include<stdio.h>
int tail(char line[][], long nlines, long n, int number, int title, char 
*name)
{
  long i=0;
  if(title)
    printf("\n===> %s <===\n\n", *name);
  for(i=nlines-n; i<nlines; ++i)
    {
      if(number)
        printf("%ld: ", i);
      printf("%s", line[i]);
    }
  if(i>0)
    return i;
  else
    return 0;
}

    printf("\n===> %s <===\n\n", *name);
La printf vuole un puntatore a char... l'oggetto puntato da name
(*name) non e' piu' un puntatore a char, ma l'oggetto puntato da name
(che se non mi sbaglio equivale a 's'.
Prova a togliere quell'asterisco.
Paolo :)

int tail(char line[][], 
          ^^^^^^^^^^^^^
Non va bene.  Devi specificare almeno la prima dimensione.
-- 
The Follet

"The Follet" <thef...@thefollet.bye> ha scritto nel messaggio
news:3bcc7b2...@news.tin.it...

o la seconda!? (in ordine di 'apparizione')
int tail ( char line[][80],...
ciao
donCiccio

int tail ( char line[][80],...
Esatto.
-- 
The Follet

Newsgroup: it.comp.lang.c
Titolo: File zip

qualcuno saprebbe dirmi dove posso trovare una dll o del codice sorgente per
vb o c/c++ per gestire file zip, ace e altri tipi di file ompressi?
grazie

 vb o c/c++ per gestire file zip, ace e altri tipi di file ompressi?
Nelle API di windows. Non chiedermi quali però.
--
Alessandro Monti

 vb o c/c++ per gestire file zip, ace e altri tipi di file ompressi?
Prova all'indirizzo 
http://www.netcomuk.co.uk/~stephend/addzip.htm
.
EMG

cerca nei miei links "zlib".
puoi anche fare ^F => ": zip", ho cercato di segnare tutti quelli che
trattavano la compressione, e ce ne sono anche free.
ciao, pal
===
andrea palazzi
pal at cedoc dot mo dot it
http://www.comune.modena.it/cittadini/apal/html/
p.f. nei messaggi usare solo testo normale, non html !
please use only plain text, not html, in your emails !
=*=*=

Newsgroup: it.comp.lang.c
Titolo: URGENTISSIMOOOOOO!!!!!!!!!!! STAMPARE UNA DIALOG SU CARTA, DOVE SBAGLIO?





Il mio problema consiste in questo. Utilizzo Visual 
C (6.0), devo indiririzzare su una generica stampante condivisa in rete Nt 
l'immagine in foreground di una qualsiasi dialog. Come posso fare?
Avevo 
pensato di crearmi un contesto di dispositivo per la stampante, quindi 
attraverso la GetDC(handle) ricavarmi un contesto di dispositivo per la dialog. 
Attraverso la funzione MapDialogRect(HWND hDlg, LPRECT lpRect) ricavarmi le 
coordinate della dialog, quindi utilizzare la funzione del SDK 


 


BOOL BitBlt(HDC hdcDest, int nXDest, int nYDest, 
int nWidth, int nHeight,
     HDC Src, int nXSrc, int 
nYSrc, DWORD dwRop);


 


Qual'è il problema direte voi?
Il problema, 
presumo, consiste nel far combaciare le coordinate del video con quelle della 
stampante. Infatti la GetLastError mi segnala che in questa funzione c'è un 
parametro non valido. Di seguito vi indico come mi ricavo i parametri da passare 
questa funzione:


 


nXDest, nYDest  = GetDeviceCaps(pDC della 
dialog, HORZRES/VERTRES);


 


nWidth, nHeight = GetDeviceCaps(pDC della 
stampante, HORZSIZE/VERTSIZE);


 


nXSrc, nYSrc    = 
lpRec.left/lpRec.top


 


Urgente una risposta, anche 
stanotte!!!!!!!!!!
Ringraziamenti anticipati a tutti coloro che avranno dei 
suggerimenti da dare.
Grazie.



Sei OT, vai in it.comp.programmare.win32

Newsgroup: it.comp.lang.c
Titolo: formattazione numeri

premetto che il problema e' con dev-c++
avrei bisogno di una funzione tipo la strfmon (che nel dev-c++ non c'e')
per formattare i numeri
in pratica vorrei una funzione che faccia questo:
9123456,98 -> 9.123.456,98
qualcuno sa se esiste e dove posso trovarla??????
tnx


Io no (ed onestamente, a meno che mi perda qualche opzione esotica della 
printf, direi che non c'e' nessuna funzione standard che lo faccia), 
pero' scriverne una tu dovrebbe essere un esercizio di programmazione 
decisamente semplice...
-- 
Mat/tia Belletti - Undergraduate student @ 
cs.unibo.it
ICQ: 33292311    - email: 
mbel...@cs.unibo.it
IRC: RedGlow     - site(s): 
http://www.cs.unibo.it/~mbellett
Linux registered user 299762 @ Linux registered machine 213003
Newsgroup: it.comp.lang.c
Titolo: [HELP] [semplice] comunicazione tra processi

In generale sto facendo molte prove con vari metodi ma ancora non riesco a 
fare comunicare un mio prog. con uno già esistente che scrive su stdin e 
legge da stdout interattivamente  ...ma come si può fare??? Ci sto 
provando ma non ci riesco...
MYPROG ==[request]==> SPICE (elaborating....)
  /\                            ||
  ||                            ||
  ===============================
(spice è un programma interattivo che scrive delle linee appena avviato e 
poi ha un prompt dei comandi (quindi prende input da stdin e scrive il 
risultato su stdout)).
Ho messo "rt+" nell'apertura della pipe (d'appertutto ho letto che la 
modalità è la stessa dei file) ma mi dà segm.fault appena prova a leggere 
con fgets.
(Ho fatto altre prove...usando solo "r" effettivamente legge le prime righe 
che escono dall'esecuzione dal programma...ma poi come gli scrivo io per 
dargli dei comandi di cui leggere il successivo output???)
  FILE *fp;
  char line[130];                       
  fp = popen("spice var.cir -i", "rt+");                
  while ( fgets( line, sizeof line, fp))
  {
    printf("%s", line);
  }
  pclose(fp);
ciao e grazie a tutti.
-- 
__________________________________
"Ama e fai ciò che vuoi".... 
__________________________________

Ho messo "rt+" nell'apertura della pipe 
[...]
visert, devi rivolgerti a un gruppo specifico per la programmazione su
sistemi Unix-like.  Ad esempio: it.comp.os.linux.development
-- 
Andrea Laforgia
www.geocities.com/andrealaforgia
"640kb of memory should be enough for anyone." -- Bill Gates.

 sistemi Unix-like.  Ad esempio: it.comp.os.linux.development
ehm....sembro una pallina da ping-pong...
grazie lo stesso.
-- 
__________________________________
"Ama e fai ciň che vuoi".... 
__________________________________

 ehm....sembro una pallina da ping-pong...
Ho appena dato un esame su unix quindi per adesso sono ancora fresco, ma io
l'impostavo in tutt'altra maniera.
Cosa che sň č che una pipe non puň funzionare tra processi non imparentati,
quindi dovrai usare una fifo.
#include<stdio.h>
#include<fcntl.h>
[...]
int fd;
char buff[8];
if(!(fd=mkfifo("tuoFile",O_RDWR))){
    fd=open("tuoFile",O_RDWR);
    //poi leggi e scrivi con read\write(fd,buffer,8)
}
forse non cambia nulla con quello che hai fatto tu ma cosě DOVREBBE
funzionare

Newsgroup: it.comp.lang.c
Titolo: Prommazione VXD

Mi piacerebbe sapere se c'è in giro qualche altro matto come me che
scrive VXD (possibilmente in C o C++).
Comincio a sentirmi solo.
Potete scrivermi a 
integr...@mail.asianet.it
P.S. Io uso Watcom 10.6



non lo sei, purtroppo per me, io è da mesi che cerco di realizzare
qualcosa ma avendo a disposizione il 98ddk e windows 95 non sono
ancora riuscito a realizzare qualcosa di veramente funzionante,
avrei bisogno del 95ddk ma non riesco a reperirlo.
se vuoi puoi contattarmi via email
ciao Francesco.
Newsgroup: it.comp.lang.c
Titolo: Problemi matematici col Borland C++

Ciao a tutti,
il seguente programma mi restituisce un valore errato:
------------------cut here--------------------
#include <stdio.h>
#include <math.h>
int main()
{
  double j = pow (2,64);
  printf ("%f\n",j);
  return 0;
}
------------------cut here-----------------------
Borland C++ 4.0 Professional ->   18446744073709551620.000000
Mentre utilizzando il gcc (Win32 o Linux)
gcc                          ->   18446744073709551616.000000
Che diavolo succede?
La calcolatrice mi dice che il valore esatto è quello dato dal gcc.
Saluti,
Pierluigi
______________________________________________________
Get Your Private, Free Email at 
http://www.hotmail.com
--
Posted from [62.11.123.204] by way of 
law-f125.hotmail.com
 [209.185.131.188] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 La calcolatrice mi dice che il valore esatto è quello dato dal gcc.
  Probabilmente l'implementazione di pow(3) del Borland svolge
arrotondamenti "illeciti"... 
  Generalmente, la precisione sulle cifre meno significativa non e`
garantita. Certo, in questo caso, dalle librerie della Borland ci si
poteva aspettare qualcosa di meglio.
	Alla prossima,
		Marco

poteva aspettare qualcosa di meglio.
se si vuole essere sicuri del risultato, e' meglio
usare interi
una curiosita': il bcc gestisce i long long?
Oha
-- 
#include <disclaimer.h>

 una curiosita': il bcc gestisce i long long?
<cons>
	$ copy con > ll.c
	main() { long long a; return 0; }
	^Z
	$ bcc32 ll.c
	Borland C++ 5.2 for Win32 Copyright (c) 1993, 1997 
	Borland International
	ll.c:
	Error ll.c 3: Too many types in declaration in function main
	*** 1 errors in Compile ***
</cons>
  :)
	Alla prossima,
		Marco

	Error ll.c 3: Too many types in declaration in function main
riformulo la domanda, e' possibile usare variabili a
64 bit con bcc?
Oha
-- 
#include <disclaimer.h>

 bcc?
  Certo, il double e` senz'altro a 64 bit... :))))
	Alla prossima,
		Marco


Da quello che ho visto anche se uno scrive
  double j = (metto il valore a mano di un numero > 2^64 );
 mi restituisce un valore errato.
Che devo fare?
Saluti,
  Pierluigi
P.S. Buona Pasqua a tutti anche se in ritardo...
Newsgroup: it.comp.lang.c
Titolo: aiuto file

Ciao a tutti!... oltre al problema del cin.getline (postato ieri) ne
ho un altro (spero sia l'ultimo) e poi il mio programma sarà finito.
Vorrei fare apparire a video un messaggio di errore se il file che si
tenta di aprire non esiste. Beh...pensavo fosse una cosa semplicissima
(premetto che DEVO usare comandi in C e non in C++), ma è quella che
mi sta facendo impazzire di più. Ho provato con:
	................
	printf("Inserisci il nome del file ");
        	scanf("%s", nome_file);
        apro_file = fopen (nome_file, "r");
		if (ferror(apro_file)!=0) {     
            	printf("Impossibile aprire il file - Riprovare. \n");
// ho anche provato con if ferror(apro_file) { ecc ecc
// ma non va comunque
Ciao e grazie a chi saprà darmi una mano!

         apro_file = fopen (nome_file, "r");
if(apro_file == NULL)  {
    printf("Impossibile aprire il file - Riprovare. \n");
    // exit(-1);      ????
}
Estratto dal man del fopen :
"
RETURN VALUES
       Upon successful completion fopen, fdopen and freopen return a FILE
pointer.  Other­
       wise,  NULL is returned and the global variable errno is set to
indicate the error.
"
Quindi apro_file viene messo a NULL in conseguenza di un qualunque errore.
Se vuoi sapere lo specifico errore avvenuto devi :
a) avere messo #include <errno.h>
b) usare la variabile errno (che e' un intero e che sara' diversa da zero).
    N.B. Esiste per stampare un appropriato messaggio di errore la funzione
perror.

 tenta di aprire non esiste. 
   La libreria standard non ti da` la possibilita` di capire perche` la 
fopen() non sia riuscita ad aprire il file. Tuttavia, e` possibile che 
il tuo porting definisca una serie di errori non standard che puoi 
recuperare dalla variabile globale errno, consulta la manualistica del 
tuo compilatore.
-- 
Alla prossima,
Marco
Newsgroup: it.comp.lang.c
Titolo: [OT] strutture dati: alberi binari

Ciao a tutti!
Mi scuso subito per l'OT ma non sapevo davvero dove chiedere;
Qualcuno mi puo' spiegare che differenze ci sono tra
un albero binario
un B-Tree
un B+Tree
in particolare tra gli ultimi due ed il primo...
Ho cercato su google ma non sono riuscito a schiarirmi le idee..
Grazie a tutti.
Valerio
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/


Un btree e un albero binario hanno dei livelli,
ogni livello ti porta ad una precisione maggiore dell'elemnto da
ricercare/inserire fino ad un sua conclusione, elemento trovato,
elemento non trovato.
un albero binario permette una ricerca molto veloce su quantità di
elementi non troppo grandi con un'implementazione molto semplice,
inoltre non ha bisogno di una grande manutenzione per gestire la
struttura ad albero.
un btree ti permette una ricerca molto veloce anche su quantità di
elementi molto grandi
la differenza sta proprio nel concepire ogni livello,
in un albero binario ad ogni livello eliminiamo per esclusione il 50%
degli elementi,
questo comporta che per grandi quantità di elementi avremmo molti
livelli da controllare per arrivare alla conclusione,
in un btree ad ogni livello eliminiamo una quantità di elementi che
dipende dalla grandezza del livello,
la grandezza del livello si chiama ordine del btree,
un btree a ordine 4 significa che per ogni livello eliminiamo il 75%
degli elementi per esclusione,
se consideri che un btree può lavorare su milioni di elementi,
togliere per esclusione il 75% ad ogni livello si arriva molto
velocemente alla conclusione ;)
l'implementazione di un btre è più complessa e il suo mantenimento
strutturale ha bisogno di diversi controlli e movimenti
bye duido
Newsgroup: it.comp.lang.c
Titolo: Gestione mazzo di carte ...

Chiedo aiuto urgente !!!
Stiamo sviluppando un gioco di carte, Scala quaranta, e Poker ..... Siamo
bloccati sulla parte di gestione del mazzo di carte, del mescolamento .....
Chi puņ aiutarmi, dandomi una dritta testuale o di codice ??
GRAZIE




Credo che basti un algoritmo in cui giochi una parte fondamentale la funzione rand() della libreria standard...
In pratica si potrebbe invocare tale funzione per scegliere la carta e per posizionarla nel mazzo.
Non so quale sia la struttura dati utilizzata per implementare il mazzo di carte, supponiamo che voi abbiate utilizzato un 
array di strutture, in cui ogni struttura corrisponde ad una carta mentre l'array e' il mazzo, in questo
caso si potrebbe utilizzare una chimata di rand() scomporre il numero in modo che le prime due cifre sia il numero
della carta da pozionare e le ultime due la posizione della carta nel nuovo mazzo, se la posizione e' gia' occupata si
fa occupare alla carta la posizione immediatamente sopra o sotto....
per esempio, supponiamo che nell'array OLD_MAZZO ci sia la disposizione precedente delle carte, e che nell'array
NEW_MAZZO ci sia quella nuova, se la chiamata di rand() da come risultato 2836 vuol dire che la carta OLD_MAZZO[28]
andra' alla posizione 36 del nuovo mazzo (NEW_MAZZO[36]). Non ho mai implementato una cosa simile, ma dovrebbe funzionare... una cosa da tenere sott'occhio e' la lunghezza in cifre del numero random (che nel caso puo' essere adattata...) e
soprattutto l'innesto della funzione time() (o qualcosa del genere.......) nella rand() che fa in maniera che la se-
quenza dei random sia sempre diversa perche' dipendente dall'orario.
Fatemi sapere.
-- 
Saluti.
*NATHAN*

Che ne dici di buttar giù una traccia di codice ??
Noi intanto proveremo a fare quello che c'hai suggerito, così avremo modo di
confrontarci ....
Grazie vecchio
Andrea
Newsgroup: it.comp.lang.c
Titolo: Perimetro di un poligono di numero di lati arbitrario: dov'è l'errore? :°

Un piccolo quesito per voi: il compilatore mi dà due errori su questo 
codice, francamente non riesco a capire dove sbaglio, fatto sta che non 
funziona. Vi posto sia il testo dell'esercizio sia il mio codice.
Esercizio:
Si scriva un programma scomposto in funzioni e procedure che calcoli il 
perimetro di un poligono
i cui vertici sono inseriti dall'utente. Il numero di vertici non sia 
noto a priori: si supponga
che siano al più dieci. In particolare è richiesto che il calcolo del 
perimetro sia effettuato
tramite una funzione.
Mio codice:
#include<stdio.h>
int per(int, int);
main(){
int lati[10], i = 0, num_lati, duepi;
printf("Quanti lati vuoi inserire? ");
scanf("%d", &num_lati);
while(i < num_lati){
   printf("Inserisci la misura del lato: ");
   scanf("%d", &lati[i]);
   i++;
   }
duepi = per(lati, num_lati);
printf("Il perimetro e': %d.\n", duepi);
return 0;
}
int per(int b[], int n){
int somma = 0, j = 0;
while(j < n){
   somma += b[j];
   j++;
   }
return somma;
}
Mi dà 2 errori di type mismatch.
Grazie a tutti coloro che mi aiuteranno.
Fabio


wrote:
cambia int per(int, int); 
con int per(int[], int);


, 
real...@email.it
 says...

Ti voglio bene :)))
Grazie!

 scanf("%d", &num_lati);
<<---- devi inserire un ciclo di svuotamento
       del buffer di tastiera...
<CODE>
#include <stdio.h>
int perimetro(int nlati, int misure[])
{
    int i, r = 0;
    for (i = 0; i < nlati; i++)
    {
        r += misure[i];
    }
    return r;
}
void flushkbdbuffer(void)
{
     while (getchar() != '\n');
}
int main()
{
    int misure[10], i, n;
    do {
        printf("inserire il numero di lati (max 10):");
        scanf("%d", &n);
        flushkbdbuffer();
    } while ((n > 10) && (n <= 0));
    for (i = 0; i < n; i++)
    {
        printf("misura lato[%d]: ", i);
        scanf("%d", &misure[i]);
        flushkbdbuffer();
    }
    printf("\nPerimetro: %d\n", perimetro(n, misure));
    printf("\nPremere INVIO per terminare...");
    getchar();
    return 0;
}
</CODE>
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

     } while ((n > 10) && (n <= 0));
Ovviamente e' 
while ((n > 10) || (n <= 0));


, 
walkie...@libero.it
 says...


 veramente :°
Si ma se non fai come detto da Laforgia é difficile che funzioni sempre
tutto bene!

 ha scritto nel messaggio
news:a2hhfn$vsr$1...@pegasus.tiscalinet.it...

perché cosa succede se non svuoti il buffer della tastiera????
Ciao
--
Timothy Redaelli

>perché cosa succede se non svuoti il buffer della tastiera????
Ma gli altri posto ogni tanto li leggete?
Se nel buffer c'e' "abc", la prima getchar consuma la "a", la seconda
anziche' aspettare che l'utente prema un tasto va' a leggere la "b"...
e cosi' via. Stesso discorso per tutte le funzioni che non leggano
fino alla newline.
Il che' ti scombina (in genere) il flusso previsto del programma.
Mox
Newsgroup: it.comp.lang.c
Titolo: Un problema con database dbf

Salve, sto effettuando il porting di un programma in linguaggio 'c' su
sistema operativo OS2/Warp4 e ora mi trovo di fronte all'utilizzo di file
dbf.
Praticamente devo implementare un programma che mi permetta di utilizzare
'basi di dati' in formato 'dbf' con indici 'ntx' creati e utilizzati
all'epoca in ambiente MS-DOS con il clipper.
Qualcuno sa se esistono librerie, con la relativa documentazione, oppure
esistano dei programmi di tipo tools per gestire questi file dbf?
Se qualcuno ha del materiale o sa dove è possibile reperirlo?
Vi ringrazio.        Klaus Dobermann        
doberm...@tin.it

 wrote in message
news:8l3b3i$6pi$2...@nslave2.tin.it...

Ad esempio bgclipper e` una libreria gratuita in C che permette di leggere
(NON di scrivere) dbf/ntx e i sorgenti compilano tranquillamente sia su
Unix sia su Windows, 
http://www.xmission.com/~bgeer/bgclipper.html
Avendo la portabilita` Unix/Windows immagino/spero che OS2 non sia
poi troppo difficile da ottenere!
Del tutto analoga, ma in C++, la libreria che trovi, pure gratis, partendo
da 
http://www.softseek.com/Programming/C/Review_28140_index.html
Idem 
http://www.startech.keller.tx.us/xbase/xbase_c1.html
 che pero`
menziona specificamente anche dei port per OS2.  Il sito sembra
assai ben fatto, con documentazione e non solo sorgenti.  Sempre
gratis, che non guasta.
Questo tipo di cose si trovano tipicamente in meno di 5 minuti da un
buon motore di ricerca, cercando parole come dbf ntx library e magari
anche os2.  Se in 3 minuti ne ho identificate tre, immagino che se ci
spendi un'oretta potrai trovarne delle decine e decidere tu quali
scaricare e provare.  Fossi in te inizierei col terzo di questi.
Alex

Newsgroup: it.comp.lang.c
Titolo: Ci riprovo...

Allora, cercherò di non urlare, di non essere sgrammaticato e di evitare
titoli come "URGENTE", ma mi servirebbe davvero una mano (o anche due) per
alcuni programmi che per la maggior parte di voi sono elementari, ma per me
(che non ho nessuna esperienza di programmazione) sono complessi. Se qualche
anima pia vorrà contattarmi in privato, sarò lieto di fornirle ulteriori
dettagli. Grazie.

 ha scritto nel messaggio
news:iIqA6.3664$XQ2.6...@news.infostrada.it...

In generale il comportamento giusto da parte tua sarebbe:
1)Cercare di risolvere il tuo problema
2)Se la soluzione non va bene meditare un poco
3)Postare il tuo codice e relativi dubbi
4)Rimeditare su quanto detto nel newsgroup
vedrai che qualcuno ti aiuta di sicuro qui....e tu impari davvero!

 ha scritto nel messaggio
news:iIqA6.3664$XQ2.6...@news.infostrada.it...

Newsgroup: it.comp.lang.c
Titolo: inline function

Ciao,
Ho fatto una classe in C++, sia Rubrica il nome della classe.
Poi ho fatto creato una funzione membro
int Rubrica::getNumber(void)
{
    return number;
}
il prototipo di questa funzione membro è int getNumber(void);
Poi mi sono posto il problema di rendere questa funzione inline,
e per fare ciò ho scritto:
inline int Rubrica::getNumber(void)
{
    return number;
}
quando, dopo aver istanziato un oggetto della classe Rubrica ho
invocato la funzione getNumber non ho utilizzato la sintassi inline.
Il compilatore si lamenta... dove sbaglio?
Grazie, ciao

 Il compilatore si lamenta... dove sbaglio?
Ciao.
Innanzi tutto il primo errore e' che hai postato nel newsgroup
sbagliato! ;)
Ti conviene mandare la domanda su it.comp.lang.c++
Secondariamente, con cosi' pochi dati non e' facile capire il tuo problema.
Dovresti dire esattamente che errore ti da il compilatore
perche' "si lamenta" e' un po' vago non credi? :)
Visto che si tratta di un programmino di prova potresti anche
mettere nel tuo messaggio il codice che usi per definire
la classe e per chiamare il metodo.
ciao
Giacomo

On 11 Feb, 21:29, Giacomo Degli Esposti

Bene:
-----------------------------file
main.c------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include "Multiplication.h"
int main()
{
	int f1, f2, prodotto;
	printf("Inserire un valore intero per il primo fattore:\n");
	scanf("%d", &f1);
	printf("Inserire un valore intero per il secondo fattore:\n");
	scanf("%d", &f2);
	Multiplication obj;
	prodotto = obj.molt(f1, f2);
	printf("Il prodotto tra i due fattori e\' %d\n", prodotto);
    system("pause");
    return 0;
}
-----------------------------------file
Multiplication.cpp----------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include "Multiplication.h"
inline int Multiplication::molt(int a, int b)
{
    int result;
    result = a * b;
    return result;
}
-------------------------------------------file
Multiplication.h--------------------------------------------------------
class Multiplication
{
public:
int molt(int a, int b);
};
------------------------------primo errore generato da microsoft
visual studio 2008:------------------
error LNK2019: riferimento al simbolo esterno "public: int __thiscall
Multiplication::molt(int,int)"
 (?molt@Multiplication@@QAEHHH@Z) non risolto nella funzione _main
------------------------------secondo errore generato da microsoft
visual studio 2008:------------------
fatal error LNK1120: 1 esterni non risolti
Chi mi aiuta a capire come eliminare gli errori, se voglio fare una
funzione membro inline?
Grazie

 Grazie
come ti e' stato detto questo e' il gruppo sbagliato.
in ogni caso una lettura del manuale dovrebbe fugare ogni dubbio.
Ciao Jack

 visual studio 2008:------------------
sigh.
-- 
-riko
Newsgroup: it.comp.lang.c
Titolo: Help: pulire lo schermo della console

Ciao ragazzi,
dovrei pulire la schermata della console. Ho provato includendo la
libreria conio.h e usando il comando clrscr(); il compilatore mi da
errore....(anche perchè mi sa che funziona per c++).
In c come posso fare??
thanks!!
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 In c come posso fare??
clrscr() al limite è una funzione, non un "comando".  In ogni caso,
l'header conio.h non è standard, quindi è probabile che il tuo
compilatore non lo supporti.  Idem per lo standard C++.
La cancellazione dello schermo è un'operazione strettamente dipendente
dall'implementazione.
A seconda del compilatore che stai usando, possono esserci funzioni
specifiche per assolvere questo compito: se clrscr()/conio.h non ci
sono, allora ci sarà qualcos'altro.

beh dipende da che sistema usi o su quale sistema dovrebbe girare il
tuo prog, dal fatto che parli di conio.h senza fare nessuna premessa
particolare penso che tu usi windows, quindi o ti scarichi la conio.h e
la includi nei tuoi header (file presente nei compilatori borland se
non ricordo male) oppure puoi fare 2 accorgimenti, quali:
1) lanci una chiamata di sistema per cancellare lo schermo, quale
system("cls") presente su stdlib.h se non ricordo male, questo ti
cancella lo schermo, ma ti vincola al sistema windows, dato che cls e'
di windows, ma e' possibile adattarlo cmq a qualsiasi cosa ^_^;
2) lanci tanti println quante sono le righe dello schermo/finestra che
stai usando come visualizzazione;
poi dipende tutto se tu stai programmando su console, oppure su qualche
framework, in quel caso cambia tutto, ma penso non sia il tuo caso.....
ciao


 stai usando come visualizzazione;
println non è né un comando, né una funzione C.  Forse ti riferivi a
un "printf("\n");".  In ogni caso, scrivere tanti "a capo" per quante
sono le linee dello schermo non equivale al comando di pulizia, che
riporta il cursore nell'angolo in alto a sinistra...

si mi riferivo alla printf(), poi so che stampare tanti newline non e'
proprio cancellare lo schermo, ma e' sempre meglio che niente. ^_^


 proprio cancellare lo schermo, ma e' sempre meglio che niente. ^_^
Non è la stessa cosa.

 
printf("\033[2J");
Questa e` la stringa che ripulisce lo schermo se il terminale e` 
compatibile "ansi".  La console di Linux, xterm e la finestra dos di 
windows lo sono.
printf("\033[1;1H");
Questa stringa porta il cursore su linea 1 colonna 1.
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   Registered Linux user #337974  < 
http://giovanni.homelinux.net/
 >

 la finestra dos di windows lo sono.
ma deve essere caricato ANSI.SYS, se ben ricordo...
ciao
-- 
Cybertoldo
Per rispondermi via email, sostituisci moc.liamg con 
gmail.com
Newsgroup: it.comp.lang.c
Titolo: Numeri da 2048/4096 bit

Salve,
      cercando di implementare l'algortimo di Diffie-Hellman ho avuto
un piccolo problema (probabilmente perche' non conosco bene il C :) )
Come posso implementare numeri da 2048 o 4096 bit?
Grazie anticipatamente
-- 
Stefano Balocco
RIPE handle:	6BONE-SB27
ICQ:		17440996
ID:             8EF05AB2
Fingerprint:    DF65 A9E5 E307 D647 9E41  1CD1 9265 BF7D 8EF0 5AB2
Key:            
http://www.denialofservice.it/stefano/stefanobalocco.asc
Keyserver:      
http://keyserver.linux.it

 
La rappresentazione che dovrai utilizzare dipende essenzialmente
da quali operazioni devi farci sopra.
Se devi fare delle somme e/o sottrazioni e/o operazioni
logiche puoi anche implementartele da solo,
altrimenti (se devi fare moltiplicazioni/divisioni etc.) meglio
che ti procuri una libreria per il calcolo in precisione arbitraria,
per esempio quella della GNU:
http://www.swox.com/gmp/
(Immagino che ce ne siano altre, ma io ho usato solo questa)
ciao,
g.

 ciao,
grazie mille!


 (piu' alcune logiche)
Già.
Oltre alla libreria che ti ha consigliato Giovanni (che molti
definiscono piuttosto veloce) io vorrei consigliarti di dare un'occhiata
a miracl:
http://indigo.ie/~mscott/#download
oltre ad essere molto veloce ti consente di programmare in c++
utilizzando la normale sintassi degli operatori aritmetici (sfruttando
l'overload degli operatori).
Cristiano

 Cristiano
Stefano :)


 operatori intendo)
Direi :-)
Come accade per tutte le altre librerie in C, se non usi il C++ devi
usare le classiche chiamate a funzioni tipo divide(a,b,c) invece di
scrivere semplicemente c=a/b.
Cristiano


capisco ora la potenza del C++ eheheheheh :)


Newsgroup: it.comp.lang.c
Titolo: FAQ 2 - Testo di riferimento

Questa richiede molte integrazioni !
----------------------------------------------------
Quale libro mi conviene utilizzare per imparare il C ?
Il libro ufficiale del newsgroup è quello del creatore del linguaggio C
(Ritchie)
Brian Kernighan, Dennis Ritchie "Il linguaggio C" seconda edizione
E' da alcuni considerato difficile per i principianti, ma vale la pena
provarlo
--
Marco Coppo
University Of Sheffield

  E' da alcuni considerato difficile per i principianti, ma vale la pena
provarlo
Non credo sia troppo difficile per chi abbia gia' nozioni di base sulla
programmazione.
Ivan Molella
--
Posted from 
mta03-acc.tin.it
 [212.216.176.34]
via Mailgate.ORG Server - 
http://www.mailgate.org






Un bel libro è:
C: Didattica e programmazione
Al Kelley - Ira Pohl
Addison Wesley
--
Marco Iannaccone
"Questa è una nave moderna, ma ha un nome antico e glorioso...
Trattala come una signora e ti riporterà sempre a casa"

 provarlo
Ok sul libro ufficiale.... ma aggiungere anche una cosa del tipo (magari
anche con una breve descrizione):
-------------
Sono consigliati anche i libri.....
Si consiglia invece di evitare....
-------------
Per i titoli aspetto qualcuno piů esperto di me ;-)
--
________________________________
Togliete NoSpaM per rispondermi
bye Brain

Io ho usato e uso ancora P.Aitken, B.L.Jones - Programmare in C - Ed.
Apogeo - L.64.000
AS
Newsgroup: it.comp.lang.c
Titolo: Esecuzione di programmi esterni??

è possibile eseguire programmi o comandi esterni ad un mio programma C.
Se si come posso catturare i valori di ritorno?

 ha scritto nel messaggio
news:3EE48481...@elcora.com...


 Se si come posso catturare i valori di ritorno?
       #include <stdlib.h>
       int system(const char *string);
DESCRIPTION
       system()  executes  a command specified in string
       and returns after the command has been completed.
RETURN VALUE
       The value returned is -1 on error,  and  the  return
       status  of  the command otherwise.
Ciao,
Ema

 
Se sei sotto *nix puoi usare una fork() per creare un nuovo processo e 
all'interno di questo chiamare una execvp() o execv().
Guarda le man page per informazioni dettagliate cmq.
Maldoror.
-- 
"L'Italia sta marcendo in un benessere che e' egoismo, stupidita', 
incultura, pettegolezzo,
moralismo, coazione, conformismo: prestarsi in qualche modo a 
contribuire a questa marcescenza
e', ora, il fascismo."
Pier Paolo Pasolini, 1972

Newsgroup: it.comp.lang.c
Titolo: Operatori bit a bit

1) Una espressione con operatori bit a bit, è più veloce di una con
operatori matematici o di altro tipo?
2) Ovviamente anche per questi operato vengono fatte delle conversioni nelle
espressioni, no?
--
Marco Iannaccone
ICQ: 18748121
IRC: Tolkien
e-mail: 
captai...@ussvoyager.com

espressioni, no?
si'.

 Generalmente si'.
Direi che, come nel caso di n = n + 1 e n++, non è detto. Ad esempio, il
compilatore può ottimizzare una moltiplicazione per una potenza di due
trasformandola in un'operazione di shift.
EMG

trasformandola in un'operazione di shift.
In questo caso si', ma in generale se si confronta la velocita' di
esecuzione di una operazione bit a bit con una aritmetica, la prima e'
sicuramente maggiore.

Newsgroup: it.comp.lang.c
Titolo: Documentazione librerie C/C++ con Visual C/C++ 6.0

Salve a tutti.
Come avrete capito uso il Visual C/C++ 6.0 di Microsoft (più in generale uso
il Visual Studio anche per Java ecc.).
Vorrei sapere come faccio a sapere quali librerie ho a disposizione e di
quali metodi sono disposte.
In pratica: oltre alle librerie standard di I/O (menzionate in ogni manuale
di C), quali altre librerie ho a disposizione?
Dove le posso trovare nel mio HD?
Quali sono le loro funzioni?
Grazie a tutti!!
evo...@tin.it

 di C), quali altre librerie ho a disposizione?
Vedi la documentazione (reference) del tuo compilatore.
Davide


Se non lo hai già fatto installa MSDN che viene allegato al VC+= 6.0
HTH
gfb

 Come avrete capito uso il Visual C/C++ 6.0 di Microsoft (piů in generale

Newsgroup: it.comp.lang.c
Titolo: error: stdio.h: Nessun file o directory

ciao a tutti,
1) ho formattato il pc, e ho rimesso linux ubuntu.
Mi servirebbe rimettere l'ambiente di sviluppo C, e purtroppo non so
di quale file o pacchetti ho bisogno.
Come si puo' vedere nell'oggetto della mail, non ho la libreria
stdio.h: Cosa mi manca?
Come gcc ho la versione 4.1 ma sembra che non sia sufficiente.
2) Se dovessi scrivere software C portabile sia in ambiente linux che
windows utilizzando librerie grafiche, quali mi consigliate?
grazie mille
Marco

 windows utilizzando librerie grafiche, quali mi consigliate?
Le GTK sono portabili e si win permettono di avere un look&feel nativo.
In alternativa QT e WxWidgets.
Luca
-- 
Software is like sex; it's better when it's free.
Linus Torvalds

Newsgroup: it.comp.lang.c
Titolo: opzione -fsingle di gcc

Qualcuno mi sa dire a cosa serve l'opzione -fsingle del compilatore gcc?
Grazie

"Pistillone" ha scritto:
gcc -fsingle hello.c
cc1: Invalid option `-fsingle'
a dare errori di compilazione, credo

esatto, solo che ho trovato questo comando all'interno di un file make...
mah
grazie comunque!
"SuPeR" <aha...@laugh.doh> ha scritto nel messaggio
news:3627087.R...@iol.it...
