mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c
Titolo: c99 e funzioni gnu

Salve a tutti,
c'e' modo di compilare con gcc con -std=c99 ma avere anche funzioni come 
asprintf e mempcpy?
Thx,
Pleg 

 come asprintf e mempcpy?
Dato che sono funzioni di libreria dovrebbe essere possibile usarle 
anche se usi -std=c99.  Tuttalpiù dovrai dichiarare il prototipo della 
funzione (come se fosse locale al programma) nel caso che non fosse 
disponibile compilando in modo ansi.
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   Registered Linux user #337974  < 
http://giovanni.homelinux.net/
 >

 compilando in modo ansi.
Chiedevo perche' compilando il programma senza -std=c99 va tutto bene 
(nessun warning), mentre con quell'opzione si lamenta che le funzioni non 
sono definite. Ma io includo sempre e cmq stdio.h (vedi ad es. qui 
http://linux.die.net/man/3/asprintf
 ), perche' con l'opzione c99 
improvvisamente non mi trova piu' il prototipo? Perche' con quell'opzione mi 
prende un altro stdio.h che non ha definito il prototipo della asprintf?
Grazie,
Pleg 

 asprintf e mempcpy?
Aggiungi -D_GNU_SOURCE al comando (o equivalente #define nel sorgente).
Max

 Aggiungi -D_GNU_SOURCE al comando (o equivalente #define nel sorgente).
Ok grazie, risolto! Ci sono anche differenze notevoli tra compilarlo con 
cygwin e sotto linux:
linux:
    senza -D_GNU_SOURCE non compila mai (nemmeno senza -std=c99)
    con -D_GNU_SOURCE compila sempre (anche con -std=c99)
cygwin:
    senza -std=c99 compila sempre (anche senza -D_GNU_SOURCE)
    con -std=c99 non compila mai (nemmeno con -D_GNU_SOURCE)
Pleg 

 prende un altro stdio.h che non ha definito il prototipo della asprintf?
Nel file string.h e stdio.h della mia installazione i prototipi delle 
due funzioni citate sono visibili solo se è definita la macro 
__USE_GNU.  Non conosco i meccanismi interni del gcc, ma è evidente 
che quella macro no viene definita se scegli -ansi o -std=c99.  Se 
realmente sono funzioni di libreria (e non builtin come molte 
operazioni sulle stringhe) basta che tu inserisca il prototipo come se 
fosse locale.


Newsgroup: it.comp.lang.c
Titolo: MESSAGGI SCARICATI

scusate se questa non e' i dominio giusto per questa domanda
dove vengono scaricati tutti i massaggi della newgroup quando si sceglie di
scaricare tutta una newgroup
grazie ciao
 
uc...@tin.it



Dato che utilizzi Outlook, immagino siano memorizzati in qualche file
nella directory  di questo programma.... prova a dare un' occhiata (
io uso Agent).
-- 
Guarapito.
Newsgroup: it.comp.lang.c
Titolo: Capire le liste

Potreste suggerirmi un buon link (anche in inglese)
che spieghi, in modo semplice, le liste (in C) ?
Ho provato con Google ma mi escono quintali di roba :(
Grazie

"__frank__" <__fr...@spam.yourself.against.a.w.all> wrote in message
news:e1e%e.4272$
ID6....@twister2.libero.it

Prova con:
http://www.liuc.it/person/gbuonann/Info1_0102/Materiale/14%20-%20Liste.pdf
PS: Quando cerchi con google prova ad utilizzare comandi del tipo
"liste in c" filetype:pdf
"liste in c" filetype:doc 
etc etc
oppure
lista filetype:c  :)
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Capire le liste... all'inizio è pesante perche si lavora con dei
puntatori... il segreto sta nel capire che un puntatore ora punta qui ed ora
la... ma il semplice fatto che nn punti piu all'oggetto iniziale nn
significhi che quello nn esista piu.
Fai conto di avere una struttura e due puntatori ad essa: il primo lo chiami
first e lo inizializzi a NULL perche la lista è inizialmente vuota. Il
secondo new, e lo usi di volta in volta per creare un oggetto nuovo.
Ogni elemento della lista punta al successivo con un puntatore chiamato
next.
Crei un elemento e lo inizializzi:
new = malloc....
new->valore = ....
Dopodiche, e qui c'è il trucco, fai...
new->next = first;
first = new;
in altre parole, il nuovo elemento ha come successivo quello che ora è il
primo.
E poi fai diventare il nuovo il primo della lista.
first inizialmente è NULL... questo ti permettera di scorrere tutti gli
elementi (l'ultimo avra come next NULL appunto)
il semplice fatto che first punti a new... in realta significa solo che
entrambi puntano ad uno stesso oggetto. ma quell'oggetto nn si chiama ne
first ne new.
So che nn è facile da capire, ne tantomeno da spiegare ;)

Newsgroup: it.comp.lang.c
Titolo: importare dati da un file excel

Scusate per la domanda, forse per molti banale, ma ho il problema di
dover prendere dei dati da excel e non so come si possa fare. Finora
ho sempre importato dati da file .txt o .dat. Grazie.


da excel esporti in .csv o .txt e usi quello.
non credo che esistano (ma magari mi sbaglio) librerie per trattare
direttamente file .xls.
Ciao Jack


Credo che alla fine sia la strada più semplice.
Grazie


credo possa esserti utile
http://www.codeproject.com/KB/macros/easyif.aspx


Grazie Ken, è molto interessante.
Newsgroup: it.comp.lang.c
Titolo: Funzionamento PC ANYWHERE...

Salve a tutti.
Vorrei realizzare un programma tipo PC ANYWHERE.
Qualcuno sa per caso su quale logica si basa?
Mi spiego meglio:non riesco a capire come faccia un host a visualizzare il desktop di un computer remoto,prendendo il controllo dello stesso (vedi uso del mouse).
Spero di essere stato chiaro.
--
TiscaliFreeNet, libero accesso ad Internet.
http://www.tiscalinet.it
--
Posted from 
twingo.tiscalinet.it
 [195.130.224.85] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 del mouse).
L'argomento e' del tutto off-topic pero' dal momento che qualche anno fa ho 
scritto buona parte di uno dei "concorrenti" del programma che citi cerco di 
darti qualche suggerimento. Per mouse e tastiera sotto Win32 ci sono delle 
apposite funzioni mouse_event() e keybd_event() che possono inserire 
nel sistema dei "finti" eventi del tutto identici a quelli generati dalle 
periferiche fisiche. Quindi il computer che ha il controllo non fa altro che 
rilevare la posizione del puntatore del mouse (per es. controllando a 
intervalli regolari) e spedirla al computer remoto, che usa poi mouse_event() 
per inserirla nella sua coda di sistema. Lo stesso per clic, tasti, eccetera. 
Per quanto riguarda lo schermo il programma che gira sul computer remoto puo' 
effettuare, sempre a intervalli regolari, una semplice cattura dell'intero 
desktop ed inviare al "controller" le differenze tra questa schermata e quella 
inviata precedentemente (per minimizzare la quantita' di dati trasmessi). Se 
fatto come si deve questo semplicissimo approccio ti permette di avere un 
decente programma da usare in LAN. Il punto debole sta nella trasmissione 
delle schermate video perche' e' di gran lunga piu' efficiente inviare comandi 
(es. disegna rettangolo bianco, scrolla client area di 10 pixel e cosi' 
via) invece che bitmap, ma qui le cose si complicano troppo e penso che tu 
abbia gia' qualcosa con cui divertirti.
P.S. Mi scuso per l'off-topic, ma non frequento i gruppi su windows e volevo 
comunque rispondere.





Ora che ho ricevuto la risposta (grazie 
Alessandro),


vorrei chiedere come faccio ad inviare 
un'immagine tramite pacchetto TCP/IP per esempio.


Avete qualche sorgente di esempio?


Grazie...
Newsgroup: it.comp.lang.c
Titolo: super-banale (da principiante)

In queste istruzioni (che fanno la stessa cosa... credo):
q%=divisor
q=q%divisor
cosa fa il modulo? (si chiama così il " %"?)
Scusate ancora la banalità, ma evidentemente il libro che sto leggendo è
veramente pessimo... forse devo postare il titolo così i principianti come
me lo possono schivare in libreria.
Grazie mille.
Delta

 ha scritto nel messaggio
news:9q6m8k$qlp$1...@nreada.inwind.it...


cosa fa il modulo? (si chiama cosě il " %"?)
Serve a calcolare il resto della divisione di q per divisor.
-- 
The Follet

Grazie mille!!!!!!!!
Ciao

Cosa fa il modulo te l'hanno spiegato... solo una considerazione:
cos'e' il modulo non e' argomento di un libro di C, ma di un libro di
algebra, infatti non mi pare che i libri di C ti spieghino cosa sono
gli operatori "+", "-", "*" e "/".
Il fatto che non ti spieghi cos'e' il modulo non significa che sia un
pessimo libro (magari lo e', ma non lo puoi dedurre da questo), ma
solo che l'autore da per scontato che tu lo sappia. 
Il K&R comunque ti spiega cos'e' questo operatore (soprattutto per
introdurre la spiegazione sul comportamento di questo operatore con i
numeri in virgola mobile).
Se fosse un testo di "algebra e programmazione in C" allora ti darei
ragione :)
Paolo

cos'e' il modulo non e' argomento di un libro di C
Ma un libro sul C deve spiegare a che serve %.
-- 
The Follet

Ma un libro sul C deve spiegare a che serve %.
Infatti, il K&R 2^ Ed. lo fa, esattamente a pagina 48, nel paragrafo
2.5 dice:
" L'espressione x % y ritorna il resto della divisione di x per y, e
quindi restituisce 0 se x è un multiplo di y"
--
Rhymes - 
rhy...@myself.com
http://www.foxhound-games.it
"Sapete cosa fa un InputStream quando
gli si racconta una barzelletta? Reader..."

me lo possono schivare in libreria.
Provo a indovinare : "C, La Guida Completa" di Herbert
Schildt ?
-- 
The Follet

 Schildt ?
"C Corso completo di programmazione" di Deitel&Deitel casa editrice Apogeo;
che per la cronaca, a parte questo svarione mi sembra un testo come un
altro... (sono a pag.84) certo che se paragono la spiegazione che non c'è
sul mio, con quella del K&R: " L'espressione x % y ritorna il resto della
divisione di x per y, e quindi restituisce 0 se x è un multiplo di y" mi
viene da comprare il K&R... anzi lo ordino Lunedì!!
Grazie a tutti per avere risposto a una banalità!
Ciao.
Delta

Scusate lo scambio di identità, ma venerdì sera un mio amico ha usato il mio
PC e io non mi ero accorto di postare con il suo nick...
Pardon!!!!
Delta.
Newsgroup: it.comp.lang.c
Titolo: compilare file separati

facendo alcuni esercizi introduttivi di programmazione C, mi sono
imbattuto in un fenomeno strano che non so spiegarmi.
dapprima ho creato un programmino di parsing xml, fortemente ispirato
agli esempi di 
http://xmlsoft.org/examples
 e lo ho fatto funzionare.
poi ho suddiviso il programmino in una funzione main e una funzione
secondaria.
in ultimo ho separato i file della funzione main e di quella
secondaria, senza cambiare per nulla il codice.
in questa ultima fase, ottengo un messaggio di warning che non mi so
spiegare.
per compilare i programmi uso questo comando:
$ gcc  -I /usr/include/libxml2/ `xml2-config --cflags --libs`
xmlFunc.c main.c -o genera_xml
main.c: In function ‘main’:
main.c:6: warning: assignment makes pointer from integer without a
cast
siccome, sono abbastanza piccoli, riporto integralmente i due
programmi:
 $ cat xmlFunc.c
#include <stdio.h>
#include <libxml/parser.h>
#include <libxml/tree.h>
char*
genera_xml(int argc, char **argv)
{
    xmlDocPtr doc = NULL;       /* document pointer */
    xmlNodePtr root_node = NULL, node = NULL, node1 = NULL;/* node
pointers */
    xmlDtdPtr dtd = NULL;       /* DTD pointer */
    char buff[256];
    int i, j;
    xmlBufferPtr xmlBuf;
    xmlChar *xmlbuff;
    int buffersize;
    doc = xmlNewDoc(BAD_CAST "1.0");
    root_node = xmlNewNode(NULL, BAD_CAST "root");
    xmlDocSetRootElement(doc, root_node);
   while ((argc-=2)>0){
      node =xmlNewChild(root_node, NULL, BAD_CAST *++argv,
                NULL );
      xmlNewProp(node, BAD_CAST "valore", BAD_CAST *++argv);
    }
     xmlDocDumpFormatMemory(doc, &xmlbuff, &buffersize, 0);
     xmlFreeDoc(doc);
     xmlCleanupParser();
     return(xmlbuff);
}
$ cat main.c
#include <stdio.h>
int
main(int argc,char **argv){
   char *xml_buf;
   xml_buf=genera_xml(argc,argv);
   printf("xml: %s\n",xml_buf);
   return 0;
}

 cast
Se non metti un prototipo della funzione genera_xml() in main.c il 
compilatore assume che ritorni un intero, ma xlm_buff è dichiarato 
come puntatore a char.
Aggiungi l'opzione -Wall al comando ci compilazione per avere più 
informazioni.
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   < 
http://giovanni.homelinux.net/
 >


grazie. nel frattempo ci ero persino arrivato da solo.
il prototipo che mi serve è il seguente:
char* genera_xml(int argc, char **argv);
Newsgroup: it.comp.lang.c
Titolo: Editing di un file

Salve. 
Ho cercato su internet ma non ho trovato niente al riguardo...
Che metodo posso usare per rimuovere delle linee da un file di testo,
sapendone il contenuto ( a parte scandire riga per riga...). Esistono delle
funzioni ad hoc??
grazie a tutti
Vi][oZ
-- 
          We are the true believers
       It's our turn to show the world
 In the fire of heavy metal we were burned
         It's more than our religion
          It's the only way to live
           But the enemies of metal
              We can't forgive

funzioni ad hoc??
se epr eliminare intendi sovrascrivere con una linea vuota basta che
usi fseek poi fscanf combinato con strlen per vedere quant''e lunga la
riga da eliminare poi ti riposizioni sulla riga e fai fprintf di spazi
bianchi
Augusto Pucci
Webmaster di Prospektiva On-line
http://www.prospektiva.it

 funzioni ad hoc?? <snip>
Prova ad usare 'sed', una utility gnu, e' molto potente e non devi
scrivere una linea di codice C !!!
HTH, Andrea
-- 
 _     /°#     ----------------+-------------------------
°  \  /        Andrea          | arimicci @@
   |++~|            Rimicci    |         aritaly. com
    \ /  --------- OS/2 V5 "Phoenix" --------------------
     |   The MIDI JukeBox:
    _|_                  
http://www.aritaly.com/eng/midi/
---------------------------------------------------------
MOVIMENTO NAZIONALE UTENTI INTERNET 
http://www.notut.org/
---------------------------------------------------------

Newsgroup: it.comp.lang.c
Titolo: "Caricamento" di funzioni esterne a runtime

Salve a tutti
Lavoro sotto linux
il mio scopo e' quello di far caricare dal programma principale un certo 
plugin a scelta dell'utente.
Per plugin intendo una funzione compilata su un file a se. (Quindi il 
plugin pippo sara' nel file pippo.o, il plugin duke-nukem nel file 
duke-nukem.o ecc.).
Esiste una funzione c che mi restituisce il puntatore a questa funzione (il 
plugin appunto) esterna facendogli conoscere il file in cui si trova?
Se qualcuno puo' eventualmente suggerirmi altre soluzioni al mio problema 
ne sarei felice.
(In questo momento i plugin sono programmi a se che comunicano tramite pipe 
col programma principale, ma risulta troppo restrittivo.)
Grazie a tutti.
Riccardo
-- 
PS.
Per rispondermi via e-mail togliere .nospamplease dall'indirizzo.

 ne sarei felice.
man dlopen
;)  buon coding !!
bye

 man dlopen
Scaricato e letto:)) Grazie mille.
Mi sapreste dire se da una funzione della shared library posso
chiamare qualsiasi funzione del file eseguibile?
Ci sono degli accorgimenti da prendere (a parte l'opzione gcc -rdynamic)?
E un'ultima cosa.... per creare una shared library basta dare l'opzione
-shared?
Grazie ancora.
Riccardo
PS
Per rispondermi via e-mail togliere dall'indirizzo .nospamplease


Web Site: 
http://asterix75.capri.it
Secret MS Windows code:
while (1) { if (num_process > 1) bluescreen(rand()); }
Newsgroup: it.comp.lang.c
Titolo: gestione errori funzioni

Buon anno a tutti!!
Se io ho la necessità di richiamare + volte (veramente tante volte!) alcune
funzioni e di gestire un eventuale errore secondo voi qual è il modo
migliore?
1) Scrivere il seguente codice ogni volta che richiamo una delle funzioni di
cui devo gestire l'errore.
if(funzione(...)==-1) return gestisci_errore();
2) funzione(...)
    funzione(...)
    funzione(...)
    funzione2(...)
    funzione2(...)
    if (errno!=0) return gestisci_errore();
/* Non sono sicuro che sia corretta....se la prima va male e la seconda va
bene non otterrò errori... */
3) mi definisco una mia funzione :
    myfunzione(....) {
        if(funzione(....)==-1) return gestisci_errore();
    return;
}
/* ma se il mio programma deve terminare in caso di errore dovrò guardare il
valore di ritorno della mia funzione....ritorniamo al metodo 1 */
A me sono venuti in mente questi...ma vorrei sapere se c'è di meglio (lo
spero proprio).
Grazie
Fabrizio

 Fabrizio
Nids

 #define CALL(v,f,e) do{if((v=f)==-1){perror(e); exit(errno);}}while(0)
meglio in macro usare sempre le parentesi seno' sai che stronzate saltano via di 
tanto in tanto che poi per riuscire a sbrogliarle e trovarle bisogna fare i 
salti mortali ...
#define CALL(v,f,e) do{if(( (v) = (f) )==-1){perror(e); exit(errno);}}while(0)
poi mi spieghi perche' racchiudere il tutto in un do while se non serve a nulla ???
e non macherebbe pure il ; dopo il while ???
ciao

ci sono diverse opzioni per la gestione degli errori. ti consiglio 
questa lettura:
http://ciips.ee.uwa.edu.au/~morris/Year2/PLDS210/C_errors.html
http://ciips.ee.uwa.edu.au/~morris/Year2/PLDS210/C_errors_pt2.html


 e non macherebbe pure il ; dopo il while ???
Il ";" dopo il do while non ci vuole, se controlli bene č una definizione no
? Allora il punto e virgola č meglio metterlo durante la scrittura del
programma non credi sia meglio ? (niente vieta di metterlo in una
definizione).
....
CALL(v,f,e);
....
Invece di CALL(v,f,e) senza il punto e virgola.
Ciao Gabriele.

 ciao
ciao,
Nids

Newsgroup: it.comp.lang.c
Titolo: Algoritmi di compressione dati (Huffmann, Lzw)

Vorrei informazioni su dove reperire programmi in C o C++ che operano
nel campo della compressione dei dati (testi, immagini principalmente)
usando l'agoritmo di huffman o LZW.
Ciao Grazie
Kikko
www.ispicaweb.it
spazioweb.inwind.it/kakkiate

 usando l'agoritmo di huffman o LZW.
www.google.it/search?q=lzw+huffman

 usando l'agoritmo di huffman o LZW.
www.nr.com
Puoi  scaricare tutto  il  libro  (si`, e`  legale)  in PDF. C'e`  anche
capitolo dedicato all'huffman.
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
Quando un uomo porta dei fiori a sua moglie senza motivo, 
un motivo c'e`.
Newsgroup: it.comp.lang.c
Titolo: [1/2 OT] newbie e libreria di funzioni

Salve a tutti,
    vorrei creare la mia prima libreria contenente delle funzioni che mi
possono tornare utili :-)
per far cio', dovrei creare il mio file .h con i prototipi delle funzioni
struttere etc dichiarati come extern "C" <funzione> giusto?
nel mio .c includero' l'header sopra creato. Ma gli include di stdio etc etc
dove devo metterli sul .c o nel .h? Creera' problemi se poi in un progetto
che fara' uso di questa libreria includero' nuovamente ad esempio stdio.h?
ma il punto a me piu' oscuro e': come la compilo? ok, dipende dal
compilatore (nel mio caso gcc fornito con dev-cpp) ma io vorrei che questa
libreria ricompilandola ovviamente, mi potesse andar bene sia sotto win che
sotto linux, e' possibile far cio'? uso solo funzioni standard quindi
dovrebbe essere possibile! Vi chiedo questo perche' ho visto che da dev-cpp
quando creo un nuovo progetto libreria dinamica mi crea in automatico un .c
con gia' del codice (switch include etc) che penso non vada bene anche sotto
linux o altri ambienti!
scusate le domande banali, ma sono autodidatta e completamente digiuno di
librerie :/
grazie 1000
Ciao
Dade

 ha scritto nel messaggio
news:cvcfoo$1mm$1...@marina.home.net.it...
[CUT]
grazie, ho seguito le tue indicazioni e dopo un po' di "smanettamento" sono
riuscito a creare e linkare la mia dynamic link library sotto linux! :-)
ora mi rimane l'altra parte del problema: riuscire a fare lo stesso con
windows... spero nella gentilezza di qualcuno... sno giorni che googlo ma
non trovo nulla :(
grazie 1000
Dade

Newsgroup: it.comp.lang.c
Titolo: passaggio di matrice

Sono piuttosto disperato. Ho bisogno di passare ad una funzione una matrice
creata in modo dinamico ma non so come si fa! Sui manuali che ho guardato
tratta solo del passaggio di una matrice statica. Come faccio se la matrice
è creata dinamicamente con una calloc? per favore aiutatemi perchè ho tempo
solo poco più di una settimana per consegnare il progetto :(
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

Passare un puntatore alla matrice?
Magari con altri due parametri che indicano il numero di righe/colonne...
-- 
Quando noi ignoranti eravamo di più, tutto era più bello...
(A. Celentano)

 creata in modo dinamico ma non so come si fa!
#include <stdio.h>
#include <stdlib.h>
void stampa_matrice(int **m, int rows, int cols) {
    int r, c;
    for (r=0; r<rows; r++)
       for (c=0; c<cols; c++)
          printf("m[%d][%d]=%d\n", r, c, m[r][c]);
}
int main(int argc, char *argv[])
{
     int **m, r, c;
     m=malloc(2*sizeof *m);
     for (r=0; r<2; r++) {
        m[r]=malloc(3*sizeof *m[r]);
        for (c=0; c<3; c++) {
           m[r][c]=rand()%10;
        }
     }
     stampa_matrice(m, 2, 3);
     return 0;
}

               Grazie 1000 :-)

Newsgroup: it.comp.lang.c
Titolo: Come aprire una cartella

Ciao a tutti ho provato a fare un sorgente (quello che c' è qui sotto è una
parte) ma mi sono bloccato in un punto mi dite dov' è sbagliato?
Grazie tante.
/* <dirent.h> è incluso*/
FILE *fp;
DIR *od;
  presentazione();  /*funzione creata da me e funzionante*/
  if ((od = opendir("c:\ricettario")) == NULL){  /*la cartella "ricettario"
non la apre ho provato anche con "/"*/
    printf("Non ha aperto la directori");               /*questa
informazione non me la strampa quindi perche non la apre?*/
/* Tutto il resto funziona*/
delay(2000);
    exit(0);
  }
  if ((fp = fopen ("ECCOMMIIIIII!!!!","w")) == NULL){   /*mi crea il file
nel' hard disk*/
    printf("\n\n  Impossibile inserire la ricetta.\n  ATTENDERE!");
    delay(3000);
    exit(0);
  }
fclose(fp);
closedir(od);
return;
}
Spero che sia tutto chiaro.
Di nuovo grazie.

 wrote in message
9579mb$kno$1...@lacerta.tiscalinet.it...


 wrote in message
9579mb$kno$1...@lacerta.tiscalinet.it...



Cazzarola non ci avevo pensato :-)
che imbecille.
Grazie di nuovo.

Newsgroup: it.comp.lang.c
Titolo: domanda su vprintf in vari sistemi

Ciao, ho questi programmi (dall'universita' di santa cruz), che
fondalmentalmente sono binari C per funzionare in cgi. E fin qui...
Ad un certo punto, uno di questi esegue questa cosa:
hPrintf("<table width='100%'><tr><td align='left'>");
dove hPrintf e' in realta' una chiamata vprintf. Il fatto e' che sul
loro server il layout della pagina e' corretto, qui da me e' una ciofeca
perche' il simbolo % viene tralasciato assieme al successivo apice... ne
consegue che tutto quello che segue e' incluso del valore "width" della
tabella...
Ho modificato la chiamata in 
hPrintf("<table width=\"100%%\"><tr><td align='left'>"); 
e tutto funziona.
Ora, visto che a Santa Cruz e a Milano stiamo usando la stessa versione
di codice, visto che loro usano Linux e noi FreeBSD, e' possibile che i
due OS abbiano vprintf implementata in maniera fondalmentalmente
diversa?
Ciao
d

 diversa?
Piu' che di OS diversi parlerei di compilatori diversi (come versione 
se usate tutti e due gcc) o dai flag usati per la compilazione (usate 
gli stessi makefile?).
R.D.

 
Il makefile e' lo stesso. Qui uso gcc 4.2.1, in California non so... Cmq
ancora grazie della risposta.
d

 compilatore decide cosa fare.
Sapresti dove trovare informazioni su questo? Grazie
d

dawe ha scritto:

Lo standard ISO vero e proprio è a pagamento, ma credo sia utle solo a 
chi deve scrivere un compilatore C.
Le versioni DRAFT, invece sono disponibili su Internet. Io in genere uso 
questa che è datata Settembre 2007:
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf
Quello di cui stavamo parlando lo trovi al punto 9 del paragrafo 7.19.6.1
Remo.D

 
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf
Grassie!
d
Newsgroup: it.comp.lang.c
Titolo: CSV

Ho un problema con un parser CSV.
Ho un database nel formato (campo1.cambo2.campo3) e devo fare una ricerca 
sul campo1 e 2 e restituire il campo3.
Tutte le mie prove mi hanno portato ad un Segment Fault.
Si accettano consigli.
Grazie
Timothy

 wrote in message
news:4pRC8.45067$
zW3.5...@news1.tin.it

correggere l'errore...
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Newsgroup: it.comp.lang.c
Titolo: return (aiuto!)

In un programma ho definito il seguente puntatore:
char *identificazione[32];
poi ho definito una funzione:
xxx metodo()
{
.....
.....
.....
return yyy;
}
Richiamando tale funzione vorrei leggere ciň che č contenuto nell'array.
Cosa devo sostituire al posto di xxx e yyy?
E se definisco l'array:
char identificazione[32];
Cosa devo sostituire al posto di xxx e yyy?
Grazie e ciao,
Fernando.

 wrote in message
news:9kcbqb$d4g$1...@nreadA.inwind.it...

Newsgroup: it.comp.lang.c
Titolo: rinomina file

Ciao, sono Enrico.
Esiste un programmino che faccia questo: Io gli dò in pasto una lista di
file e lui me li rinomina tutti, con dei numeri crescenti. Per esempio, io
gli dò 20 immagini .jpg, lui me li rinomina così:
001.jpg
002.jpg
003.jpg
oppure così:
1.jpg
2.jpg
3.jpg
C'è Jasc Image Robot (sul sito di Jasc, che non ricordo qual è) che fa una
cosa simile con gli effeti sulle immagini: gli dò una lista di immagini e il
programma gli fa tuta una serie di operazioni che scelgo io, per esempio
aumentare il contrasto, rimpicciolirle a tot pixel, oppure applicare una
serie di effetti...
A me servirebbe, invece, solo che li rinominasse.
Anche una cosa "fatta in casa" andrebbe bene...
Ringrazio anticipatamente.
--
-----------------------------------------------------------------
mailto:
kiko...@libero.it
ourSyte(comunitàArgonauti): 
http://clanargonauti.freeweb.org
ourSyte.mirror:                      
http://web.tiscalinet.it/clanargonauti
(Qualcuno ci vada e ci faccia un po' di preo...)
-------------------------------------------------------------------

 
Prima di tutto devi specficare la piattaforma, anche se immagino
win9x/dos. Cmq se ti accontenti di un programma da riga di comando, da
lanciare nella dir dei file da rinominare, se vuoi te lo mando io.
Dimmi se vuoi il sorgente da compilare o direttamente l'eseguibile.
--
 Ciao, Luca.
 Reply to 
luca....@tiscalinet.it

 Dimmi se vuoi il sorgente da compilare o direttamente l'eseguibile.
L'exe, non ho un compilatore.
 ciao e grazie
enrico
--
--------------------------------------
mailto:
kiko...@libero.it
ourSyte(comunitąArgonauti): 
http://clanargonauti.freeweb.org


 L'exe, non ho un compilatore.
Un consiglio: fai attenzione a chiedere gli eseguibili, potrebbero
essere qualsiasi cosa...


  Ciao, Luca.
Hai ragione, non ci avevo nemmeno pensato. La troppa fiducia nei NG's...
Tra l'altro, non so come, ma ho risposto con l'account di mia sorella.
Ho trovato un altro paio di programmini, cmq, che non ho avuto ancora modo
di trovare, causa esami (che non finiscono mai, però almeno ho BEN quattro
gioni di vacanza prima che ricomincino le lezioni...);
grazie, enrico
--
--------------------------------------
mailto:
kiko...@libero.it
ourSyte(comunitàArgonauti): 
http://clanargonauti.freeweb.org

Newsgroup: it.comp.lang.c
Titolo: segnali, come si generano?

scartata la join collettiva di vari thread su uno, ho pensato di mettere
il più importante in join e gli altri in pause(), poi quando il primo si
sveglia manda un segnale agli altri che ripartono.
Allora, la pause è ok, la signal pure, ma come diavolo faccio a mandare un
segnale mio ai thread in pausa?

segnale mio ai thread in pausa?
Ottavio, sei OT qui dentro, rivolgiti a it.comp.linux.development.
-- 
Andrea Laforgia
#exclude <windows.h>

 Ottavio, sei OT qui dentro, rivolgiti a it.comp.linux.development.
a me non sembra poi cosi' OT. Anche perche' questo software che sto
facendo non sara' solo linux, ma anche sotto solaris. E siccome lo
sviluppo in c...

E siccome lo sviluppo in c...
Non è un buon motivo per non rivolgerti a un gruppo specifico, qui
dentro si discute di aspetti legati strettamente al _linguaggio_, non
alle implementazioni.  Se tutti facessero questo ragionamento, allora
it.comp.linux.development e it.comp.programmare.win32, tanto per fare
due buoni esempi, non avrebbero senso di esistere, visto che ci sono
gruppi che trattano sicuramente di tutti i prossibili linguaggi per
programmare su queste piattaforme.


 segnale mio ai thread in pausa?
Per spedire un segnale ad un processo si usa kill() (man 2 kill), il
problema e' che kill prende come parametri il numero del segnale e il
pid del processo e i thread, in generale, non hanno il pid.
A complicare le cose c'e' da dire che su alcune piattaforme il thread
il pid possono averlo o meno dipende da come sono implementati (su Linux
ad es. vengono creati con una chiamata a clone(), la stessa usata per
creare un nuovo processo).
Pertanto la tecnica di mandare un segnale ad un thread potrebbe o meno
avere successo a seconda dell'implementazione (della serie scordati la
portabilita' anche tra Unix diversi): a mio avviso dovresti vedere per
qualche altra tecnica di sincronizzazione.
Da quanto detto sembra chiaro che il tuo non e' un problema di "C", ma
e' un problema piu' particolare.
Visto che il tuo e' un problema molto legato alla piattaforma Unix,
il suggerimento di Andrea non era sbagliato. Su linux.development
piu' di una volta sono passati thread relativi ai thread (e scusa il
bisticcio di parole) sicuramente ci sara' qualcuno che potra' darti
una mano.
HTH
C:\>iao Angelo
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ha scritto nel messaggio
news:pan.2003.02.05.19....@nospam.vi.it...

thread in c?

Newsgroup: it.comp.lang.c
Titolo: CD e autorun

un mio amico che fa il grafico pubblicitario ha realizzato un CD
multimediale con Director. vorrebbe sapere come far avviare automaticamente
l'applicazione, all'inserimento del CD.
grazie.
MarioH

 l'applicazione, all'inserimento del CD.
Vedi 
http://www.soft-land.org/faq/autorun.html
Davide
Newsgroup: it.comp.lang.c
Titolo: Help (n)curses

Ciao, vorrei sapere dove poter trovare qualche guida sull'utilizzo di queste
librerie.
Ho già guardato il man, ma avrei più bisogno di una guida ai primi passi con
esempi di codice.
Qualcuno sa dove andare a guardare?
Grazie a tutti,
    Marco


The trouble with being poor is that it takes up all your time.
Newsgroup: it.comp.lang.c
Titolo: Leggere file

Salve
e possibile in C leggere il contenuto di  svariati file
con estenzione.txt  invece che leggere il nome
del file stesso.Un'pò come utilizzare il carattere *.
Grazie


Ti servono le funzioni definite in <dirent.h>, queste ti permettono di 
avere l'elenco dei files in una directory.
E.

 ha scritto nel messaggio
news:ED8Aj.9516$q53....@tornado.fastwebnet.it...



-- 
Programming is usually taught by examples.
Niklaus Wirth

Newsgroup: it.comp.lang.c
Titolo: Pointer to Functions in non ANSI C

Hi,
Could someone please tell me the correct way to write prototypes of pointers
to function in Kernighan and Ritchie C? For example, how do I declare them
as arguments of functions in function headers, how do I apply them?
The ANSI way seem not to work for programs written in non ANSI C.
In ANSI for example, I can say:
void foo( int (*fp)(int *, int))    /* fp is a pointer to function that
returns int
                                                   and takes (int*) and int
*/
{  
    /* foo definition */ 
    int *ip, i;
    (*fp)(ip, i);     // applying function pointed to by fp
}
foo( fp); // calling foo with fp as argument
How do I do the above in non ANSI C???
Thanks a lot in advance.
Hathal 

to function in Kernighan and Ritchie C? For example, how do I declare them
In pre-ANSI C, you don't specify the argument types that a function
takes -- so, for example, "int (*fp)();" will declare a pointer to a function
returning int (whatever arguments it takes).
Per i connazionali italiani: la domanda é su come dichiarare puntatori
a funzioni in C pre-ANSI (erroneamente chiamato "C Kernighan e Ritchie",
come se la seconda edizione dell'ottimo libro di K&R non fosse invece
proprio sul C ANSI...!).  La mia risposta: non si specificano i tipi degli
argomenti che la funzione prende, quindi ad esempio "int (*fp)();" dichiara
un puntatore a una funzione che torna int, qualsiasi argomenti accetti.
Alex
Newsgroup: it.comp.lang.c
Titolo: Deallocare un vettore multidimensionale

In questo modo io mi alloco un vettore multidimensionale:
    *a = malloc(righe * sizeof(int *));
    for (i = 0; i < righe; i++)
        (*a)[i] = malloc(colonne * sizeof(int));
Ora la mia domanda e' questa, come faccio a deallocare la memoria=?
basta un semplice free(*a), quando ho terminato, quello che devo fare
oppure la cosa e' un po' piu' complessa?
Grazie dei suggerimenti
Alex



La risposta e' semplice :
Devi effettuare tante chiamate a free() quante sono le chiamate a
malloc() che effettui durante l'allocazione.
Normalmente si fa cosi' :
/* allocazione */
int **a ;
a = malloc ( righe * sizeof (int*) ) ;
for ( i = 0 ; i < righe ; i++ ) 
    a[i] = malloc ( colonne * sizeof (int) ) ;
/* deallocazione */
for ( i = 0 ; i < righe ; i++ )
    free ( a[i] ) ;
free ( a ) ;
Nel tuo caso, in cui probabilmente a e' passato per riferimento ad una
funzione mediante un puntatore, si ha :
for ( i = 0 ; i < righe ; i++ ) 
    free ( (*a)[i] ) ;
free ( *a ) ;

Alex
Con free(a) libereresti memoria solo per il vettore di puntatori e
perderesti la possibilità di disallocare le "righe" di interi (tutta la
serie di malloc all'interno del ciclo for). Per disallocare correttamente il
tutto dovresti adoperare il procedimento inverso.
    for (i = 0; i < righe; i++)
      free( *a[i] );
    free(a);
Così dovrebbe funzionare. Smentitemi se sbaglio.
Ciao, Giuseppe

      free( *a[i] );
             ^^^^ NO.
Nel caso fosse int **a ; si dovrebbe usare free(a[i]), ma in questo
caso (cioe' int ***a) e' giusto che si usi free((*a)[i]) ;

caso (cioe' int ***a) e' giusto che si usi free((*a)[i]) ;
Non ci avevo fatto caso. Grazie per l'appunto.
Ciao, Giuseppe

Newsgroup: it.comp.lang.c
Titolo: Array dinamico da un tokenizer

Ciao a tutti,
č da un po che non tocco il C e mi hanno chiesto un compito urgente da
svolgere...il mio problema č questo:
ho una stringa di questo tipo "valore~valore~valore" e di questi valori  ce
ne possono essere un numero variabile...
alla fine vorrei ottenere un array di stringhe (regolarmente terminate con
/0) in cui ogni elemento contiene un valore...come posso realizzare tutto
ciň?
grazie

come posso realizzare tutto ciň?
Da' uno sguardo ad strtok()
-- 
Andrea Laforgia - walkietalkie(at)
libero.it

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

dove posso trovare un manuale di C in rete?
GRazie

http://host.aspide.it/trickyc/trkcfrm.htm
Newsgroup: it.comp.lang.c
Titolo: lunghezza di una stringa

Questo è il mio prob:
Viene immessa una parola da tastiera e quindi vorrei contare quanti
caratteri sono stati premuti
Es:
Se digito pippo una variabile x dovrà essere reimpita con il valore 5
Spero di essermi spiegato
Grazie ancora

 wrote in message
lGCQ3.45142$i06.5...@typhoon.libero.it...


 wrote:
[ snip ]
A>Viene immessa una parola da tastiera e quindi vorrei contare quanti
A>caratteri sono stati premuti
Potresti provare qualcosa del genere:
-------------------------------------------------------------------
#include <stdio.h>
#include <string.h>
int main(void)
{
        char *c, buffer[256];
        fputs("Inserisci una parola: ", stdout);
        if (fgets(buffer, sizeof buffer, stdin) == NULL) {
                perror("fgets"); exit(1);
        }
        if ((c = strpbrk(buffer, " \t\n")))
                *c = '\0';
        printf("La parola '%s' e' lunga %d caratteri.\n", buffer,
               strlen(buffer));
        return 0;
}
-------------------------------------------------------------------
Ciao ciao,
Andrea
-- 
"...Unix, MS-DOS, and Windows NT (also known as the Good, the Bad, and 
 the Ugly)."
(by Matt Welsh)

Se digito pippo una variabile x dovrą essere reimpita con il valore 5
#include <stdio.h>
main()
{
    int counter = 0, c ;
    while ( ( c = getchar() ) != '\n' )
          ++counter ;
    printf(" %d\n", counter ) ;
}    
--
Andrea Laforgia        (
andrea_...@bigfoot.com
)


La mia č una domanda:
  funziona anche cosě o c'č qualche inghippo?
  la getchar() deve per forza essere assegnata ad una variabile?
 #include <stdio.h>
 main()
 {
     int counter = 0 ;
     while ( '\n' != getchar() )
           ++counter ;
      printf(" %d\n", counter ) ;
 }
--
________________________________
Togliete NOSPAM per rispondermi
bye Brain

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

Salve,
volevo sapere, conosco sia C che C++, ma uso quest'ultimo praticamente
sempre, e quindi uso massicciamente la Standard Template Library.
Mi chiedevo, ma esiste un insieme di funzioni standard per il C e
soprattutto delle strutture dati 'standardizzate' ??
Qualcosa che equivale a std::vector<> per il C++ per capirci.
Grazie, j0k3r
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Qualcosa che equivale a std::vector<> per il C++ per capirci.
Che io sappia, non esiste, ed infatti questa e' una delle brutte cose 
dello standard C :P
-- 
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: POP3 Server

Dovrei programmare un server POP3 e mi servirebbe qualche esempio semplice
da intepretare.
Avete qualche link da darmi??



mi viene in mente hamster (di cui sono disponibili i sorgenti), ma non è
scritto in C e di conseguenza molto probabilmente non ti serve a niente.
:-)
ciao
-- 
     _
    | |
 ___| |	
http://magicforum.altervista.org
(    .'
 )  (   
http://www.klaki.com?Ref=I156861
Newsgroup: it.comp.lang.c
Titolo: Lettura file Lightwave 3D

Salve a tutti!
Sono attualmente impegnato in diversi progetti. Tra i vari ho bisogno di un
lettore di file Lightwave (possibilmente il LWO2) e non riesco a trovarlo da
nessuna parte. Mi urgerebbe e non importa se è un file C o una classe C++,
visto che conosco discretamente i due linguaggi.
Ho anche un altro grosso problema (mi rendo conto che è OT...) non so come
ci si sottoscrive ai vari newsgroup. Mi spiego meglio: dalle proprietà
dell'outlook scelgo Strumenti->Newsgroup. Ma non riesco a vedere i vari
it.comp.xxxxxx (dove xxxxxx sono lang.c, lang.c++, grafica,
grafica.photoshop ecc.....), e siccome mi servirebbero alcuni riguardanti il
C++ Builder, il Lightwave ed il 3D in generale (sia in programmazione, sia
in grafica), sarebbe cosa gradita se qualcuno mi potesse aiutare. Certo di
una Vostra comprensione, resto fiducioso in attesa!
Salve! Che gli Dei e gli Asi siano Veco!

 classe C++, visto che conosco discretamente i due linguaggi.
Hai provato a cercare in Freshmeat.net oppure su Sourceforge.net ?
Google?
Bye

Newsgroup: it.comp.lang.c
Titolo: ambiente per c

Ciao,
 
 
per motivi di studio devo riprendere contatto con il linguaggio C.
 
Mi consigliate un abiente, in cui possa vedere durante l'esecuzione del 
prog anche altre informazioni, come memoria,registri etc?
 
p.s. attualmente il linguaggio C dove trova il suo massimo impiego?
 
grazie

 ha scritto:

Se sei su windows, Visual C++ 2010 Express
 


Se sei su Windows
http://www.codeblocks.org/
 (free e multipiattaforma).
 
Su OSX: i Developer Tools (Su App Store).
 
Su Linux: linea di comando + gcc + gdb (come editor a me piace Kate)
 
Ciao Jack
 
 
-- 
Yoda of Borg am I! Assimilated shall you be! Futile resistance is, hmm?
Newsgroup: it.comp.lang.c
Titolo: DIVIDE ET IMPERA AIUTO!

Chi mi aiuta a risolvere il seguente problema ?
progettare un algoritmo divide et impera che data una n-pla di numeri interi
a1,a2......aN con n>1 ne calcoli la somma
determinare l'ordine di grandezza del tempo di calcolo dell'algoritmo in
funzione di n
naturalmente in c
se qualcuno pottesse aiutarmi 
fabio...@tiscali.it
Garzie



funzione di n
O(N)
-- 
Ciao, Giuseppe

Grazie......

Newsgroup: it.comp.lang.c
Titolo: Eseguire velocemente questo codice...

Ciao,
come eseguire velocemente (senza il salto condizionale) questo codice?
int   r;
....
if (!r) r++;
grazie


Non puoi fare meglio di così.
E.

 Non puoi fare meglio di così.
Assegnare direttamente 1 ad r potrebbe richiedere meno tempo che
incrementare r di 1.
--
enos76

eno...@gmail.com
 ha scritto:

Nel post originale c'erano dei puntini tra le due righe, quindi dobbiamo 
supporre che r venga modificato prima dell'if.
A quel punto se r vale 0 deve invece valere 1. Concordo con manu che non 
si puo' fare di meglio.
Per chiarezza l'avrei scritto:
   if (r==0) r=1;
che non lascia spazio a dubbi.
Se anche non ci fossero i puntini, r non varrebbe necessariamente 0. 
Infatti il frammento:
int r;
if (!r) r++;
è valido solo all'inizio di un blocco (per esempio una funzione:
void ff()
{
   int r;
   if (!r) r++;
   ...
}
ed in questo caso r avrà un valore indeterminato prima dell'if.
A questo punto mi piacerebbe sapere dall'OP il motivo di questa domanda.
Remo.D

 supporre che r venga modificato prima dell'if. [...]
Intendevo che   if (!r) r=1   rispetto a   if (!r) r++   sul mio
compilatore veniva eseguito piu' velocemente.
--
enos76

eno...@gmail.com
 wrote in
news:dc1165be-c394-4851...@k37g2000hsf.googlegroups.com
: 

piu' che dal compilatore penso dipende se il processore ha l'istruzione
incremento oppure no. 
e cmq in generale
if (!r) r=1;
e' diverso da
if (!r) r++;
dipende da cosa si vuole fare e se l'istruzione viene eseguita una volta
sola o ripetutamente. 
Ciao Jack
-- 
Eroi non si nasce, ti incastrano
- Jim Belushi

 Eseguirla una o piu' volte non influisce.
ah si vero... :P ho letto una cosa e inteso un'altra...


eno...@gmail.com
 ha scritto:

Naturalmente dipende dal compilatore. Senza ottimizzazione č plausibile 
che "if (!r) r=1" sia piu' veloce. Piccolo test con GCC:
int f()
{ int r;
   if (!r) r=1;
}
int g()
{ int r;
   if (!r) r++;
}
L'assembler generato senza ottimizazione mostra che il codice nei due 
casi č diverso:
------------------------------
_f:     ...
	cmpl	$0, -4(%ebp)
	jne	L2
	movl	$1, -4(%ebp)
L2:
------------------------------
------------------------------
_g:     ...
	cmpl	$0, -4(%ebp)
	jne	L4
	leal	-4(%ebp), %eax
	incl	(%eax)
L4:
------------------------------
Come vedi per "r=1" viene eseguita una sola istruzione, per "r++" ne 
vengono eseguite due (non ho verificato i cicli necessari a ciascuna 
istruzione, ma non credo sia rilevante in questo caso)
Con l'ottimizzazione, invece, viene generato lo stesso codice in tutti e 
due i casi.
Morale: usare "if (r == 0) r=1". E' piu' chiaro non č certo piu' lento.
Remo.D
Newsgroup: it.comp.lang.c
Titolo: Programmazione ad oggetti

Volevo togliermi i seguenti dubbi
Il C è un linguaggio che può essere programmato ad oggetti?
Le strutture del C sono la stessa cosa delle classi in C++, in tal caso si
tratterebbe di programmazione ad oggetti?
Windows viene programmato in C o C++ (mi riferisco alla programmazione di
base, cioè mediante API)?
La programmazione  mediante API è una programmazione ad oggetti?
Salve!!!

Salve!!!
Paolo Mossino :)

La programmazione  mediante API è una programmazione ad oggetti?
Non e' corretto, le API sono funzioni del sistema operativo, quelle di
windows sono realizzate in un contesto object oriented, ma sono state
realizzate con linguaggi che non lo erano.
Tuttavia grazie alla personalizzazioni dei compilatori odierni, se
programmi in C vedi le API come una serie di funzioni e strutture
dati, se programmi in C++ vedi le API come una serie di classi.
Ad ogni modo cio' che sta sotto non cambia.
ciao, acc.   
a...@libero.it

In C o in C++ come si dichiara l'eridarita di un oggetto?
cioč in pascal (visto che bene so solo quello :o) )
Object( nome oggetto "padre")
in c/c++?
Il Razziatore,
The Only Good Windows in an uninstalled Windows
-----------------------------------------------
E-MAILs : 
IlRazz...@netscape.net
WEB     : 
http://www.razziatore.dns2go.com/
ICQ     : 67552596

 La programmazione  mediante API è una programmazione ad oggetti?
no, è procedurale.
Anto
-- 
Antonio Cuni, 19 anni, studente
Brainbench C++ Master: 4.6, higher than 98% of all previous test takers.
C Language: 3.32, higher than 79% of all previous test takers.
Guida C/C++ di Programmazione.it: 
http://cpp.programmazione.it

O la derivazione?
ci sarebbe
class derivata : base
o una roba cosi in C++ per creare una classe derivata contenente tutti i
metodi e le variabili di base piu altri membri aggiuntivi... non so se è
quello che intendevi
Dome

in c/c++?
BASTA ! 
Qui dentro si parla di C, non di C++ !
Spostatevi su it.comp.lang.c++ e imparate a usare i ng !
--
CyberWalkie - walkietalkie(at)
libero.it

CyberWalkie - walkietalkie(at)
libero.it
Il Razziatore,
The Only Good Windows in an uninstalled Windows
-----------------------------------------------
E-MAILs : IlRazziat...@NOSPAMnetscape.net


PS io li so usare i ng.
A quanto pare no.
Spostati su un gruppo che tratta un linguaggio orientato
agli oggetti.
--
CyberWalkie - walkietalkie(at)
libero.it

 IN C NON ESISTONO GLI OGGETTI !
Non oso contraddirti... ma ogni tanto spunta fuori su qualche libro Object
C... che è sta rrobba??
--
BlackDemon - bdemon(at)
iol.it

C... che è sta rrobba??
Ti stai probabilmente riferendo a "Objective C", e' qualcosa
di ancora diverso sia da C che da C++.
--
CyberWalkie - walkietalkie(at)
libero.it

di ancora diverso sia da C che da C++.
Ma in questo ng si può parlare anche di MS C# ???  ;)

Ma in questo ng si può parlare anche di MS C# ???  ;)
No.
--
CyberWalkie - walkietalkie(at)
libero.it


Web site: 
http://asterix75.capri.it
E-commerce software: 
http://www.alfacomm.it/

 Ma in questo ng si può parlare anche di MS C# ???  ;)
Ho solo chiesto, spiritosone
--
BlackDemon - bdemon(at)
iol.it
Newsgroup: it.comp.lang.c
Titolo: Cosa c'è che non va??????

Ciao...
#include <stdio.h>
#include <conio.h>
#include <string.h>
void Menu(char *txt, short NElem);/*protot*/
void main(void)
{   
 char txt[4][10];
 strcpy(txt[0], "aaa1");
 strcpy(txt[1], "bbb2");
 strcpy(txt[2], "ccc3");
 strcpy(txt[3], "ddd4");
 
 Menu(*txt, 4);
}
void Menu(char txt[], short NElem)
{
 short i=1;
 for (;i <=NElem; i++)
  printf("%s\n", txt[i] );
 getch();
}
Perchč stampa caratteri strani????????
Uffaaaaaaaa
ByeZ!
Alkondor

 Ciao...
#include <stdio.h>
#include <string.h>
void Menu(char txt[][10], int NElem)
{
        int i;
        for (i = 0; i < NElem; i++)
                puts(txt[i]);
}
int main(void)
{
        char txt[4][10] = { "aaa1", "bbb2", "ccc3", "ddd4" };
        Menu(txt, 4);
        return 0;
}
Ciao ciao,
Andrea
-- 
"...Unix, MS-DOS, and Windows NT (also known as the Good, the Bad, and 
 the Ugly)."
(by Matt Welsh)

void Menu(char txt[], short NElem)
void Menu( char *txt[], short NElem )
oppure 
void Menu( char txt[4][], short NElem ) 
p.s.: il ng non e' il luogo a cui lasciare la patata bollente ! ;)

void Menu( char txt[4][], short NElem ) 
            ^^^^^^^^^^^^^
...ops...
char txt[][10]

Perchè stampa caratteri strani????????
Perche' hai inizializzato i a 1 e quindi hai un travalicamento del
range dell'array .
Soluzione :
  printf("%s\n", txt[i-1] );

  printf("%s\n", txt[i-1] );
Il problema, ancor prima che qui e' nella dichiarazione della
funzione.

 }
void Menu(char txt[4][10], short NElem)
{
 short i=0;
 for (;i <NElem; i++)
  printf("%s\n", txt[i] );
 getch();
}
EMG

 void Menu( char *txt[], short NElem )
Così è sbagliata. E' corretta
void Menu(char (*txt)[10], short NElem)


void Menu(char (*txt)[10], short NElem)
e' giusto.
Newsgroup: it.comp.lang.c
Titolo: isdigit method problem

Hello,
 I have a program thats calling isdigit() with a value of -86. IsDigit() returns a value of 4 instead of returning zero. This is the OS version:
SunOS  5.10 sun4v sparc SUNW,T5240
Any idea whats going on. As per documentation, isdigit should return non-zero value only for any of the decimal digits (0-9).... Its called from a C++ program
Thanks,
Sunil

> calling isdigit() with a value of -86. IsDigit() returns a value of 4 instead of returning zero.
 
The ISO standard says the argument value must be character
representable as an unsigned char or EOF. Otherwise, the behavior is
undefined.
It is your task being sure to feed isdigit() with correct values.
-- 
andrea - ar italy, com

Perch� rispondi a un tizio che posta in inglese su un gruppo italiano? A 
me pare una scortesia bella e buona, non degna di risposta.