mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c
Titolo: [REQ] Gestione stringhe nei file.

}
per leggere i dati dal tuo file puoi fare in questo modo:
char s1[256];
FILE *a;   /* Nota che nel tuo codice hai commesso un errore!*/
char carattere;
int cont,x;
cont=1;
cin>>x;
a = fopen("c:\file.txt","r+");
while (! eof(a) && cont<=x)     /*Controlla che il file non sia finito e il numero di caratteri letti 
{
    fread(&carattere,size of (char),1,a);  /*<<legge>> il carattere da file a e lo scarica nella variabile carattere*/
    strcat(s1,a);                                          /*aggiunge via via i caratteri letti alla stringa s1*/
    cont++
}
Alla fine del ciclo troverai in s1 gli x caratteri che desideravi.

 testo in modo sequenziale in base a un contatore che le viene dato...

 cin >> x;
[...]
Scusate l'ignoranza, ma che cosa fa questa istruzione? E' uno shift?
-- 
 Ciao, Luca.
 Reply to 
luca....@tiscalinet.it

 Scusate l'ignoranza, ma che cosa fa questa istruzione? E' uno shift?
No. L'operatore >> definito per la classe istream serve a leggere
l'input e mettere il risultato nella variabile indicata a destra
dell'operatore stesso. A seconda del tipo di quest'ultima verrà letto il
valore appropriato.
EMG

you wrote :

Specifichiamo che è codice C++, non C.
--
Andrea Laforgia        (
andrea_...@bigfoot.com
)

 Specifichiamo che è codice C++, non C.
Azz! Ero convinto di trovarmi su it.comp.lang.c++. Scusate.
EMG

 
Ah, ecco! Di C++ non so assolutamente nulla! Lo so che non e' una bella
cosa, ma non ho molto tempo da dedicare ad approfondimenti personali per
il momento...


    fread(&carattere,size of (char),1,a); 
In questi casi si usa fgetc()
sizeof (char) = 1 sempre e comunque.
--
Andrea Laforgia        (
andrea_...@bigfoot.com
)

Newsgroup: it.comp.lang.c
Titolo: contenuto directory windows

Salve,
avrei bisogno data una directory, e l'esensione di un file di stampare
a schermo tutti i file dell'estensione inserita dentro alla directory
data.
Esempio:
directory: "ciao"
file: "*.exe"
funzione (directory, file);
L'esempio è puramente indicativo.
Il codice deve girare sotto windows.
Ho cercato materiale sulla libreria direct.h ma non ho trovato
qualcosa che faccia al caso mio.
Qualche aiuto?
Grazie
--
tdan...@jumpy.it

 wrote

Ho appena risposto ad un altro messaggio OT e... beh 2 di fila no...
Posta su di un NG di programmazione per windows, questo a poco a che fare
con il C.
Tommy

con il C.
Ma il codice lo devo scrivere in C.
Non vedo L'ot sai... davvero.
Mi spiegheresti dove lo vedi tu? Ed eventualmente sapresti indicarmi
un ng più adatto (io non lo conosco).
Grazie,
--
tdan...@jumpy.it

 Grazie,
Non mi pare che in ANSI C ci sia un modo per fare quello che vuoi tu. E 
questo ti renderebbe OT.
E cmq, basta cercare un attimo: it.comp.programmare.win32
-- 
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

E cmq, basta cercare un attimo: it.comp.programmare.win32
Grazie anche di questo.
Ciao.
--
tdan...@jumpy.it
Newsgroup: it.comp.lang.c
Titolo: Lcc, messaggi utili e fastidiosi

ciao a tutti,
una curiosita' sul compiler Lcc win32.
lo uso da ieri e un po' rimpiango l'ingenua semplicita' del turbo c.
scrivere un codice c non e' poi cosi' ovvio: numerose finestre, per lo
piu' incomrensibili per un neofita come me, si aprono (richiesta di
aprire un progetto, settaggi dello stesso e robe varie) al quale
rispondo in modo automatico con Create... ma tralasciando tutto cio', mi
sono accorto che al termine dell'esecuzione di un prog vengono riportati
diversi messaggi quali il tempo di esecuzione e altro. non negando
l'utilita' (ma non sempre la necessita') di tali informazioni mi
chiedevo se fosse possibile in qualche modo evitare che vengano
visualizzati. e' possibile?
inoltre sembra che alcuni file.c che venivano compilati senza problemi
sul turbo c non piacciano al mio nuovo compilatore, pur essendo
sintatticamente corretti (scaricati da internet e come detto testati sul
turbo c).
grazie e ciao
mirko
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 visualizzati. e' possibile?
Non c'è modo per non visualizzare il tempo di esecuzione se lanci
l'eseguibile da Lcc. Se questa (preziosa) informazione non ti
interessa, ti basta eseguire il programma da una finestra di terminale
DOS.
Per quanto riguarda la creazione dei progetti, puoi accelerare la
procedura in questo modo: nel caso tu debba compilare un solo file
contenente il main() puoi crearlo a parte con un qualsiasi editor di
testo (compreso quello di Lcc), successivamente lo apri da Lcc e poi
dai 'Compile'. A questo punto Lcc dirà che il file non è associato ad
alcun progetto, e ti chiederà di crearlo. Tu rispondi di sì e il
programma verrà compilato senza ulteriori messaggi di richiesta.
-- 
Ciao, Giuseppe
Windows NT: designed for the Internet.
The Internet: designed for Unix.

 sul turbo c non piacciano al mio nuovo compilatore, pur essendo
Compilatore che genera codice a 16bit (e neanche troppo standard da quel
che so).
Mi pare ovvio che qualcosa di diverso _debba_ accadere compilando codice
che si aspetta ad esempio int da 16 bit e che poi se li ritrovi a 32 etc
etc etc.
-- 
A. Top posters
Q. What's the most annoying thing on Usenet?
Newsgroup: it.comp.lang.c
Titolo: PUNTATORE A FUNZIONE

Ho un problema di sintassi.
Avrei la necessita' di definire un tipo di
funzione che ha come parametro di ingresso un char, e che restituisce un
puntatore al suo stesso tipo di funzione.
Quindi una funzione di questo
genere puo' anche restituire un puntatore a se stessa.
Qualcuno puo' drmi
qualche dritta? Magari con uno spezzone di codice dell'intestazione e del
codice di uscita...
Ciao a tutti
GIGI
--------------------------------
Inviato via 
http://usenet.iol.it

 codice di uscita...
Non vorrei dire una cavolata, ma credo che l'unica soluzione possibile sia
quella di utilizzare puntatori a void:
typedef void * (*fptr)(char*);
void * pfun(char * str) {
    /* ... */
    fptr prova=pfun;
    return prova;
}
questo pezzo di codice viene compilato. Fammi sapere se ti è servito a
qualcosa.
Ciao,
Cecco

 void * pfun(char * str) {
   ^^^^^
fptr pfun(char * str) {
Cosě puoi effettuare inizializzazioni di variabili fptr.
Cecco

typedef void * (*fptr)(char*);


--------------------------------
Inviato via 
http://usenet.iol.it
Newsgroup: it.comp.lang.c
Titolo: strutture puntate

Salve a tutti (premetto che il mioproblema è su una piattaforma rabbit che
ha unlinguaggio di programmazione al 90% ansi C, non gestisce file .h ma
solo .lib )ho definito una struttura nel mio programma:
typedef struct tcpip
{
	char buffer[256];
	char source[30];
	char type[3];
	char user[60];
	char dati[255];
	char priorità[2];
	//struct tcpip *nextcmd;
} TCPIP ;
TCPIP *currentBuffTemp;
ora 2 questi
- posso usare la struttura all'interno dei una funzione definita in u file
.lib?
- come cancello i dati contenuti della nei membri della struttura,
accedendoci con "->" ?
grazie mille?
--------------------------------
Inviato via 
http://usenet.libero.it

 accedendoci con "->" ?
memset  ..... (ptr->membro, 0, dimensione)

Il 23 Lug 2003, 12:27, "Antonio Mazzeo" <a[NOT]mazzeo@email[DOT].it> ha
scritto:

io usavo queste due notazioni
memset(currentBuffTemp,0,sizeof(struct tcpip));
memset(currentBuffTemp->source,0,sizeof(currentBuffTemp->source));
e non cancella ninte :( forse è questo linguaggio dynamic C che ha
problemi!!!!


 problemi!!!!
mi spiace non conosco questo dynamic c ...
antonio

 mi spiace non conosco questo dynamic c ...
La struttura e' stata allocata, vero?
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG


--------------------------------
Inviato via 
http://usenet.libero.it

Newsgroup: it.comp.lang.c
Titolo: Dual core

Salve a tutti,
volevo sapere se si può "gestire" direttamente il carico di lavoro su 
ogni singolo core di macchine dual-core a livello di linguaggio di 
programmazione. Qualcuno di voi ha esperienza? Oppure pensa a tutto l'OS?
Ciao,
Giulio

programmazione. Qualcuno di voi ha esperienza? Oppure pensa a tutto l'OS?
Io conosco solo 
www.openmp.org
 , spero ti sia utile.
Newsgroup: it.comp.lang.c
Titolo: cercasi collaborazione per creazione librerie

[Proposta di lavoro] hehehehe
Posto il messaggio sia qui che su it.comp.lang.c++ perchè vorrei realizzare
questa cosa sia in c che in c++ (non saprei se è il newsgroup più adatto, ma
se ho sbagliato segnalatemelo che provvederò a non ripetere questo errore).
Di cosa si tratta? E' presto detto: ho studiato i semafori, le conditional
regions, i monitor e compagnia bella e sono potenzialmente in grado di usare
detti costrutti per implementare una corretta gestione dei processi
concorrenti. A lezione non abbiamo avuto la possibilità di scrivere codice
relativamente a questo problema e vorrei fare una libreria di funzioni utili
ad esercitarmi con queste problematiche. Cerco qualcuno che come me sa di
cosa si sta parlando e che abbia una conoscenza di base di C disposto a
collaborare con me per realizzare questa libreria o almeno una persona che
voglia darmi qualche dritta per qeul che riguarda l'effettiva
implementazione delle funzioni e delle strutture dati.
Ringrazio sentitamente e rispondete numerosi :-)
San Vegeta

 regions, i monitor e compagnia bella e sono potenzialmente in grado di
usare
Sono tutte belle cose, ma serve un minimo di supporto dell'hardware (tipo
istruzioni "leggi e setta") per avere della "vera" concorrenza. Puoi farlo
sotto DOS, ma non credo in altri SO, poichè mi risulta che siano istruzioni
privilegiate (potrei però sbagliarmi), e comunque hanno già le loro
implementazioni usabili tramite API o system-call. Giusto per esercizio,
comunque, potresti provare a realizzare qualcosa di tuo, ma non vedo molte
applicazioni oltre ad applicativi giocattolo, a meno che tu non voglia
scriverti un nuovo SO. Per le applicazioni serie, è molto meglio affidarsi
alle funzioni del SO, che sono più testate, efficenti, sicure, veloci da
usare. O almeno si spera...
--
Alessandro Monti


Oh, io volevo solo esercitarmi per verificare la mia preparazione e per fare
esercizi sulla programmazione concorrente, tutto qui. Mi dispiace però che
se hai ragione tu, non possa fare niente del genere sotto linux, questo mi
fa molto preoccupare...
San Vegeta

 fa molto preoccupare...
Non ne sono sicuro, puoi provare a consultare un manuale di assembler. Se
Intel, puoi scaricarti tutto il manuale (o meglio, i 3 manuali) da
www.intel.it
, non dovresti aver difficoltà a trovare le informazioni che ti
servono, tenendo presente, però, che tutta la parte di schedulazione di
processi, gestione della memoria, gestione dei livelli di privilegio, ti è
preclusa a livello ASM, almeno in parte. Puoi però provare a fare un buon
emulatore di multitasking, con un po' di signal ai processi (o thread) o
cose simili, magari con tue gestioni di memoria heap, precedentemente
chiesta al SO, purchè poi i task in esecuzione chiamino le tue funzioni
invece delle malloc. Un po' come faceva Windows 3.0, insomma.
--
Alessandro Monti

 regions, i monitor e compagnia bella e sono potenzialmente in grado di
usare

Newsgroup: it.comp.lang.c
Titolo: malloc,free e puntatori

Scusate se la domanda è stupida, ma con il seguente codice:
int *val;
val=malloc(sizeof(int) * 50);
*val=125;
printf("\n%d",val[0]);
free(val);     // o free((void*)val);
printf("\n%d",val[0]);
perché anche nella seconda printf mi appare il valore 125?
Dopo aver fatto la free quel valore non dovrebbe essere stato eliminato
dalla memoria?
Deep

 dalla memoria?
free() rende nuovamente disponibile la memoria precedentemente allocata con 
malloc. E basta. Nel senso che _non_ la cancella.
In questo caso, sei particolarmente "fortunato", perché nessun altro 
processo ha utilizzato quell'area da quando l'hai liberata a quando 
visualizzi il contenuto.
-- 
asettico (aka Roberto) [
http://www.rossomaltese.it/
]
GPG fingerprint [ BA20 8C8D 7712 9D9A 57F3  A96A A7BE 905C 1CB9 26BA ]
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS/IT/O d++(-) s:+>: a34 C++$ ULAVH*++$>++++ P+ L+>++++ E--- W++(-) N(++)
o? K-? w(---) !O M@ V@ PS+@ PE- Y? PGP->++ t+++ 5? X++ R tv+ b+ DI(+)
D++(---) G(-)>-- e>++++ h---() r++ y+++*
------END GEEK CODE BLOCK------

 ha scritto nel messaggio
news:9SEQb.4858$VS6....@tornado.fastwebnet.it...

Credo che funzioni cosi':
quando si esegue la malloc viene riservata un'area di memoria e associata al
puntatore. Quell'area di memoria risulta 'bloccata', nel senso che NON e'
allocabile per altri puntatori.
quando si esegue la free l'area di memoria viene rilasciata nel senso che e'
di nuovo a disposizione per nuove allocazioni. Il vecchio puntatore però
continua a puntare a quell'area che, se nessun'altro rialloca e modifica,
rimarra' inalterata.
Ciao,
Ema

 dalla memoria?
Hai solo restituito al SO quella zona di memoria visto che non ti serve
piu'.
Quando tale zona viene riallocata a qualche altro processo non puoi saperlo:
riaccederci
dopo la free come fai tu ha comportamento indefinito, prima o poi core
dumpi....
saluti

 dumpi....
Sě lo so, era solo per provare dato che in un programma molto piů grosso, mi
ritrovavo delle struct sporche anche dopo la free, e allora volevo capire :)
Grazie a tutti per le delucidazioni.
Deep
Newsgroup: it.comp.lang.c
Titolo: programmare senza sistema operativo

Sapete se esiste qualche strumento o libreria per compilare programmi 
che girino senza os? Intendo per un programma che venga lanciato al boot 
del computer.
Piů o meno conosco il processo di boot e se mi metto a sfrucugliare tra 
le opzioni del compilatore probabilmente riesco a tirare fuori qualcosa. 
Immagino che basti fare in modo che non vengano linkate dinamicamente 
librerie e che l' eseguibile non sia in formato exe ecc. Ma non saprei 
se bisogna mettere delle istruzioni per impostare qualche modo di 
funzionamento della cpu o altro.
Inoltre, il  programma che ho in mente non fa niente di particolare, 
solo calcoli, scrive qualche messaggio di stato a video, ma deve salvare 
molti dati su disco. Pe i messaggi a video credo che bastino le funzioni 
del bios, ma per scrivere su hard disk?
Se possibile consigliatemi anche qualche parola in inglese da googlare, 
non ho idea di dove andare a cercare.

 non ho idea di dove andare a cercare.
lilo, grub, syslinux
Sono boot manager, potresti vedere i loro sorgenti
Bye,
Raktzo

 Raktzo

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

NESSUNO SA DIRMI COME FARE FUNZIONARE IL COMANDO textcolor SU BORLAND C
PERCHE' A ME NON FUNZIONA... LA LIBRERIA <conio.h> L'HO MESSA MA NON
FUNGE... E COSI ANCHE textbackground....
GRAZIE
                                tripod_blee

Prova ad utilizzare cprintf anziché printf

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

Ragazzi, sapete dirmi
come posso fare a far eseguire
in una funzione
un programma in ASM scrivendoci il codice(sempre il ASM)?
10x

"warfare" ha scritto:

l'unica cosa std al riguardo e' che tale inclusione di codice inizia 
con asm.
cosa ci vada dentro e intorno e' strettamente platform e implementation 
dependent, quindi chiedi sul NG di competenza


wrote:

dovrebbe essere
__asm 
{
  codice asm
}
o
asm 
{
   codice asm
}
Il Razziatore,
The Only Good Windows in an uninstalled Windows
-----------------------------------------------
E-MAILs : 
IlRazz...@netscape.net
WEB     : 
http://www.razziatore.dns2go.com/
ICQ     : 67552596
Newsgroup: it.comp.lang.c
Titolo: Aiuto su Alberi!

Sono sempre io che rompo ma si avvicina l'esame!
Dato un puntatore A alla radice di un albero binario, i cui nodi contengono
numeri interi già presenti in memoria, devo scrivere una funzione che
ricevendo A in ingresso calcoli la somma S1 dei valori sel sottoalbero
sinistro, S2 per il destro e restituisca la differenza (S1-S2).
Quella che ho scritto a me sembra troppo facile.......ci sono errori?
Grazie
/* def albero */
typedef struct nodo {
         int info;
         struct nodo *sin;
         struct nodo *des;
       } tipo_nodo;
typedef tipo_nodo *punt_albero;
/* funzione calcola */
int calcola(punt_albero A)
{
   int S1, S2, dif, sum;
   if(A!=NULL)
   {
      sum+=(A->info);
      S1=calcola(A->sin);
      S2=calcola(A->des);
      }
   dif=S1-S2;
   return dif;
}

Stai lavorando sugli AVL ?
Perche se ti serve ho implementato svariate funzioni sull'argomento...
byez
 NK

Newsgroup: it.comp.lang.c
Titolo: Shell sort ricorsivo

Qualcuna sa come impostare l'algoritmo di Shell sort in modo ricorsivo?
--------------------------------
Inviato via 
http://usenet.libero.it

Qualcuno sa trasformarmi questo algoritmo iterativo nel medesimo in modo
ricorsivo?
void shell(int *a,int n)        //sottoprogramma
{
 int inc, j, k, inserted, x, current, previous;
   inc=n;                        //algoritmo di shell
   while (inc>1)
   {
    inc=inc/2;
      for(j=0;j<inc;j++)
      {
       k=j+inc;
         while (k<=n)
         {
          inserted=0;
            x=a[k];
            current=k;
            previous=current-inc;
            while ((previous>=j) && (inserted==0))
            {
             if (x<a[previous])
               {
                a[current]=a[previous];
                  current=previous;
                  previous=previous-inc;
               }
               else
               {
                inserted=1;
               }
            }
            a[current]=x;
            k=k+inc;
         }
      }
  }
}
Newsgroup: it.comp.lang.c
Titolo: [getchar] Codici dei tasti

Ciao raga,
come posso interecettare la pressione dei tasti cursore, invio, escape e
canc?
Con getchar o cosa? Scusate ma sono una frana in C.
grazie,

 canc?
L'invio e` l'unico  carettere che puoi trattare in  maniera corretta (e`
'\n').
Gli altri sono  composti da una sequenza di key  codes (iniziante con il
carattere  escape). Non  puoi  trattarli  con  getchar  ne`  con  alcuna
funzione standard:  devi appoggiarti  a funzioni  specifiche per  il tuo
sistema operativo.
Per Windows: it.comp.programmare.win32
Per Linux: it.comp.os.linux.development
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
"Su cio` di cui non si puo` parlare e` bene tacere".
 Ludwig Wittgenstein

Newsgroup: it.comp.lang.c
Titolo: intero in stringa

convertire un intero in stringa

convertire un intero in stringa
usare sprintf
--
Andrea Laforgia
andrea_...@bigfoot.com

intendo convertire una variabile di tipo int in una variabile di tipo
char
es pippo=1 in pluto="1"
la funzione sprintf come funziona?
Andrea Laforgia ha scritto:


char
sprintf( tua_stringa, "%d", tuo_intero ) ;
Stai attento comunque nel dire "una variabile di tipo char", perche'
cosi' non si intende una stringa (che in C tra l'altro non esiste come
tipo predefinito).
--
Andrea Laforgia
andrea_...@bigfoot.com

 la funzione sprintf come funziona?
int pippo = 1;
char pluto[ CAPIENZA_MASSIMA ];
sprintf( pluto, "%s", pippo );
EMG

   ------------------------------------------------------------------------

sprintf( pluto, "%d", pippo );
Eri un po distratto!
Ivan Molella
--
Posted from 
mta10-acc.tin.it
 [212.216.176.41]
via Mailgate.ORG Server - 
http://www.mailgate.org

 Eri un po distratto!
Ero _molto_ distratto. :-(
EMG



Newsgroup: it.comp.lang.c
Titolo: cgi in c.

Salve.
E' vero che i cgi si possono scrivere oltre che in perl anche in c?
Io lavoro su sistema operativo Linux.
Sarebbe possibile poter avere solo due righe di codice in modo da capire
come fare per scrivere cgi in c?
Grazie.
--
  Mauro Sanna
(
mrs...@tin.it
)
--
Automatic posted from 
mail.tin.it
 [194.243.154.49]
via Mailgate Server - 
http://www.mailgate.org

Prova questo:
--/[test.c]/--
#include <stdlib.h>
#include <stdio.h>
int main(void)
{
  printf("Content-Type: text/html\n\n");
  printf("<HTML><BODY><H1>Hello, World!</H1></BODY></HTML>\n");
  return EXIT_SUCCESS;
}
--//--
...e compila con qualcosa del tipo:
$ cc -o test.cgi test.c
Ciao, julio di egidio
ju...@webzone.it



Ok, grazie.Un'altra cosa: il vantaggio nell'utilizzare il c piuttosto che il
perl nello scrivere script cgi e' dato dalla maggiore velocita' del primo?
Ciao.


 perl nello scrivere script cgi e' dato dalla maggiore velocita' del primo?
Velocità ed economicità delle risorse: pensa che ogni volta che invochi
uno script in Perl deve partire l'interprete. La differenza diventa
abissale se il programma CGI deve accedere a risorse di sistema, ad es.
file su disco.
Lo svantaggio, secondo alcuni, è che scrivere programmi in Perl è molto
più semplice... non sono mai stato totalmente d'accordo.


Newsgroup: it.comp.lang.c
Titolo: [NEWBIE] int main()... main()...int main(void)...??

 grazie a tutti

 wrote in message


Newsgroup: it.comp.lang.c
Titolo: espressioni regolari

Ciao a tutti, avrei bisogno di leggere da un file alcuni record di
questo tipo:
identificatore = numero   numero   numero   ( numeri intervallati da un
numero sconosciuto a priori e imprevedibile di spazi/tabulazioni )
in pratica un' espressione regolare del tipo \w+=(\s+\d){3}
La linea del record, una volta letta da fgets, finisce in una variabile
stringa. 
Avevo pensato a sscanf( string, "%d %d %d", &v0, &v1, %v2 ) ma non
riesco a capire quale convertitore usare per non fargli considerare gli
spazi.... %*c ne fa sparire uno solo, altre idee, al termine di una
giornata di programmazione, non me ne vengono :(
Qualcuno ha gia risolto un problema simile? 
Grazie
Ivan


Vedi strtok() usando come stringa dei separatori FS=" \t="
HTH gfb

 spazi.... %*c ne fa sparire uno solo,
nessuno!
semplicemente:
sscanf( string, "%d%d%d", ... etc,
gli spazi (o tabulazioni o line feed o CR) sono eliminati automaticamente
dalla ..scanf, perche' sono i whitespace, cioe' delimitatori di un valore di
input.
Il problema di scanf e' quando gli spazi li vuoi leggere, non quando li vuoi
eliminare.
ciao
donCiccio
Newsgroup: it.comp.lang.c
Titolo: CGI e sessioni.

Avrei bisogno informazioni su come si gestiscono le sessioni di un modulo
CGI in C!
Qualcuno ha gia' esperienza in tal senso?
Grazie
Tony
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com
).
Version: 6.0.592 / Virus Database: 375 - Release Date: 18/02/2004

 Tony
 Il Bellini Guidi tratta l'argomento nel capitolo 19, non è chissà cosa ma
sempre meglio di niente!!
Qualche tempo fa mi sono imbattuto in rete in una edizione elettronica della
prima edizione (scusa il gioco di parole) del libro.
Ciao
Marco

 ha scritto nel messaggio
news:c151qp$f0h$1...@grillo.cs.interbusiness.it...

Grazie per la tua risposta ma il mio problema non e' sapere come fare una
cgi ma come gestire le sessioni in cgi.
Ciao Tony


Newsgroup: it.comp.lang.c
Titolo: OpengGL + VisualC++6

Stavo provando a fare un piccolo programma in VC++6 che sfrutta le
OpenGL, ma in fase di compilazione mi viene dato questo errore:
--------------------Configuration: OpenGl - Win32
Debug--------------------
Compiling...
main.cpp
c:\program filesvisual studio\vc98\include\gl\gl.h(1152) : error C2144:
syntax error : missing ';' before type 'void'
c:\program filesvisual studio\vc98\include\gl\gl.h(1152) : error C2501:
'WINGDIAPI' : missing storage-class or type specifiers
c:\program filesvisual studio\vc98\include\gl\gl.h(1152) : fatal error
C1004: unexpected end of file found
Error executing cl.exe.
OpenGl.exe - 3 error(s), 0 warning(s)
===================================
Qualcuno ha idea di come risolvere questo problema? Forse sono le lib
rerie che non sono linkate correttamente. Ecco quello che ho fatto io
seguendo le indicazioni di un manuale trovato su internet:
---------
First we will include all necessary OpenGL files and libraries in this
project. Select "Project-Settings" from the menu. Click on the "Link"
tab (or press Ctrl-Tab to move there). Select the "General" category (it
should already be selected by default), and enter the following into the
Object/Library Modules edit box: "opengl32.lib glu32.lib glaux.lib".
Press OK. Now open the file "stdafx.h". Insert the following lines into
the file: 
------------

 'WINGDIAPI' : missing storage-class or type specifiers
e' sicuramente dovuto al fatto che non chiami l'header
windows.h PRIMA degli header opengl (cioe' gl.h).
Credo che questo risolva anche gli altri due (non
sono sicuro).
Per notizie piu' precise ti consiglio di postare su:
it.comp.programmare.win32

 sono sicuro).
Proprio quello. E' che avevo preso un sorgente da un sito ma era per
linux! ghghghgh
Grazie! 

Newsgroup: it.comp.lang.c
Titolo: [?]Come funziona gotoxy();

Salve a tutti ,  c'è qualcuno che mi spiega come funziona gotoxy();
o meglio come si può rifare senza appoggiarsi a conio.h , la funzione
gotoxy();?
Come si può , senza usare conio , spostare il cursore nella posizione
xy(0,0);
Effettivamente , il codice che riproduce queste due funzioni dove lo trovo?
Grazie a tutti
Ciao  Roberto

xy(0,0);
Non puoi farlo senza l'ausilio di alcuna funzione specifica.
--
Andrea Laforgia (mica uno qualunque...)

xy(0,0);
/* quick'n dirty */
void Gotoxy(char x, char y) {
	_asm {
		xor	ax, ax			// zero !
		xor	bx,bx			// zero ! (vpage)
		mov	dh, y
		mov	dl, x
		mov	ah, 2			// set cursor position
		int	10h
	}
}
ciao, acc.   
a...@libero.it

 /* quick'n dirty */
l'hai mai provato? lo sai che sotto winkatz se compila, o crasha, o da' 
un blue screen? e che sotto linux neanke ti si fila? e, dulcis in 
fundo, cosa c'entra con il C?

e, dulcis in fundo, cosa c'entra con il C?
In ogni compilatore C che si rispetti e' esiste un modo per inglobare
codice assembler, moltissimi programmatori lo usano, IMHO e' un
qualcosa di inscindibile, io non ne posso piu' fare a meno...
ciao, acc.   
a...@libero.it

qualcosa di inscindibile, io non ne posso piu' fare a meno...
Parlatene da un'altra parte, grazie.
p.s.: ecco come si va a finire quando si parla di aspetti
non-standard del linguaggio.


Andrea Laforgia (mica uno qualunque...)
Uh ?  Come dire uno 'non standard' ?  Pentiti !!!
ciao, acc.   
a...@libero.it

Da come lo dici sembra che sia successo chissa' cosa...
Vediamo se comprendi il paragone: cade un aereo, muoiono 500
persone.  Si scontrano 10 pullman, muoiono 500 persone.
--


linguaggio.
Per concludere, in rispetto al subject originale, tu consigli di non
spostare il cursore, cioe' lasciarlo li' dove si trova ?
ciao, acc.   
a...@libero.it

spostare il cursore, cioe' lasciarlo li' dove si trova ?
Non dire idiozie, per cortesia.


Non dire idiozie, per cortesia.
E tu non provocarle... se hai una soluzione migliore dilla, altrimenti
taci.  Le critiche le accetto se sono propositive.
ciao, acc.   
a...@libero.it

Le critiche le accetto se sono propositive.
SEI OFF TOPIC !
--
Andrea Laforgia - walkietalkie(at)
libero.it
http://www.geocities.com/AndreaLaforgia

Newsgroup: it.comp.lang.c
Titolo: HELP! &&

C'è un modo diverso per scrivere:
while ((c != 'i') && (c != 'c') && (c != 'e') && (c != 'f')) {
......
}

 while ((c != 'i') && (c != 'c') && (c != 'e') && (c != 'f')) {
while (c & 'i' | c & 'C | c & 'e' | c & 'f') {
O mille altre formule calcolate bit a bit e forse poco portabili.
Oppure:
while (strchr ("icef", c) {
--
Alessandro Monti

while ((c != 'i') && (c != 'c') && (c != 'e') && (c != 'f')) {
usa strchr() (string.h) per testare se c appartiene o no a "icef".
Andrea Laforgia (andrea_...@XXXbigfoot.com)
------------------------------------------------
Il mio indirizzo di posta elettronica è inattivo 
per il momento.
Newsgroup: it.comp.lang.c
Titolo: Array

Scusate qualcuno conosce il codice esatto della funzione
x gli array dell'"insertion sort". Mi serve l'algoritmo completo scritto in
C.
Vi ringrazio molto x l'aiuto.


... Google no? ...
-- 
Mat/tia Belletti - Graduate student @ 
cs.unibo.it
ICQ: 33292311    - email: 
mbel...@cs.unibo.it
IRC: RedGlow     - site(s): 
http://mbellett.web.cs.unibo.it/
Jabber: RedGlow  - Linux registered user 299762 @ machine 213003



Credo che nessuno ti posterà il codice, prima prova tu a farlo (magari
leggendo qualcosa sull'algoritmo insertion sort su google o sul libro
che hai) , poi prova a fare il codice e poi si vede :) Niente pappa
pronta

copia e incolla...
void insertion_sort(int *array, int nr){
	int i, j, temp;
	for(i = 1; i < nr; ++i){
		temp = *(array+i);
		for(j = i-1; (j >= 0) && (temp < *(array+j)); j--)
			*(array+(j+1)) = *(array+j);
			*(array+(j+1)) = temp;
		}
}
n.b nr indica il numero di elementi dell'array, nel caso nn sia definito
globalmente.


Che bravo !
Cosi' l'avrai sicuramente aiutato a non studiare.
Ma mi pare di aver visto un piccolo errore !
Ciao
Giuseppe

Newsgroup: it.comp.lang.c
Titolo: Librerie ANSI C - Reference Manual

Mi potreste  succerire un reference manual alle librerie standard
ANSI C... con qualche vostra critica possibilmente.
Grazie
--
Giovanni Costagliola
**********************************************
**  A Smart E-mail is Short!!! :^)...       **
**  Temporary address: 
jann...@libero.it
  **
**------------------------------------------**
**  Fly to my site 
http://fly.to/janniCos
   **
**       ... under construction ...         **
**********************************************

ANSI C... con qualche vostra critica possibilmente.
The C Standard Library di P.J. Plauger
Newsgroup: it.comp.lang.c
Titolo: Principiante

Salve per imparare a programmare in c che letture mi consigliate ? o
cos'altro?
grazie ciao.

 Salve per imparare a programmare in c che letture mi consigliate ?
Kernighan e Ritchie - Il linguaggio C - Seconda edizione.
EMG

 wrote in message
37A28B7A...@flashnet.it...


 si può fare con questo linguaggio?
Il C è un linguaggio di livello medio-basso nel senso che permette
l'interazione stretta con la macchina ma di contro fornisce anche
strumenti per l'astrazione. Una delle sue caratteristiche è quella di
avere un nucleo molto contenuto formato da alcune keywords (parole
chiave del linguaggio), alcuni tipi di dati base, alcuni strumenti per
comporre da essi dati più complessi e alcune istruzioni di controllo.
Quindi da imparare è abbastanza facile (a parte alcuni concetti ostici
come quello di puntatore).
Cosa ci si può fare? Proprio perché il nucleo è molto compatto, con
questo soltanto non ci si può fare proprio niente, neanche stampare un
carattere a video. A questo sopperisce la ricca libreria standard che
però è pensata per la portabilità e quindi non copre quasi nessuno degli
aspetti della "programmazione di tutti i giorni".
Per fortuna il C è studiato anche per la massima facilità di estensione
attraverso l'utilizzo di librerie esterne e, sempre per fortuna, alcune
di queste librerie vengono fornite con il compilatore e molte altre se
ne trovano sia free che commerciali.
Quindi la risposta alla tua domanda è che ci si può fare di tutto, basta
trovare la libreria adatta. La maggior parte dei prodotti commerciali
più diffusi sono scritti in C come anche i sistemi operativi tipo
Windows, Unix, Linux, etc. Insomma, il C è senz'altro uno dei linguaggi
generici più utilizzati al mondo. Viene superato attualmente da
strumenti di più facile utilizzo (ma molto meno efficienti e coerenti)
come il Visual Basic.
Ciao.
EMG

Secondo me, se non hai mai programmato, un buon testo è anche:
Alessandro Bellini - Andrea Guidi
Guida al Linguaggio C
McGrawHill
Secondo me il K&R non spiega bene come programmare in C, quanto
piuttosto illustra lo standard C, con un 'elenco' di comandi seguito
da una breve descrizione.
Questi libro, invece,  è più vago sullo standard ANSI, ma in compenso
spiega chiaramente i concetti, la logica da seguire programmando in C
e fà un'abbondante trattazione sulle strutture dati, cosa che ritengo
molto utile.


 wrote in message 37a46028...@news.tin.it...

Newsgroup: it.comp.lang.c
Titolo: conio.h in linux...

Quale libreria devo usare per avere funzioni come la gotoxy() e clrscr() 
sotto linux? gcc non mi riconosce conio.h, io pensavo di non avere problemi!
Ciao, ALFI_
               ALFREDO DONATI
¤===¤===¤===¤===¤===¤===¤===¤===¤===¤===¤
  \  Undergraduate Student of Computer  /
   \ Science at University of Bologna  /
    ¤==¤===¤===¤===¤===¤===¤===¤===¤==¤
     \    
www.cs.unibo.it/~adonati
   /
      \     
ado...@cs.unibo.it
     /
       \      ICQ# 111878362       /
        ¤===¤===¤====¤====¤===¤===¤
I don't have a license to kill.
I have a learner's permit.

 sotto linux? gcc non mi riconosce conio.h, io pensavo di non avere problemi!
Esiste un hack della conio.h (che e` presente solo per compilatori
Borland). La trovi su 
http://freshmeat.net
 con keyword "conio".
+++
Un paio di hint:
1. Riduci la signature;
2. Inserisci il sig-dash ("-- ").
Bye,
 Emmanuele.
-- 
I ... Owe ... You ... Pain! -- Willow, "Tough Love"
Italian Buffy Resource Site (Beta) - 
http://www.ibrs.f2s.com
GnuPG Key ID: 0xA4320FF4
GnuPG Key FP: 4DD0 C90D 4070 F071 5738  08BD 8ECC DB8F A432 0FF4

 wrote:
: Quale libreria devo usare per avere funzioni come la gotoxy() e clrscr() 
: sotto linux? gcc non mi riconosce conio.h, io pensavo di non avere problemi!
: Ciao, ALFI_
ti consiglio di imparare ad usare le librerie ncurses.
bye
-- 
  --==> ALoR <==---------------------- -  -   -
  ettercap project: 
http://ettercap.sourceforge.net
  e-mail: alor (at) users (dot) sourceforge (dot) net    

 ti consiglio di imparare ad usare le librerie ncurses.
Ci sono anche le S-Lang, portabili su piu` sistemi.
http://www.s-lang.org

Newsgroup: it.comp.lang.c
Titolo: molto principiante....

Ciao a tutti,
come da oggetto sono un principiante che studia sul K&R.
ho provato il seguente programmino ma c'e' qualcosa di fondamentale che
mi manco. dovrebbe semplicemente contare le righe in input che vengono
digitate:
#include<stdsio.h>
main()
{
   int c, nl;
   nl=0;
   while((c=getchar()) != EOF)
         if (c=='\n')
            ++nl;
   printf("%d\n", nl);
}
uso il turbo C.
il fatto e' che quando lo lancio continua a girare all'infinito, secondo
il comando while, ma come faccio ad interrompere il prog ed ottenere il
responso? con ctrl+c lo stoppo ma non mi da alcun risultato. come e'
definito EOF? COSA e' EOF per il compilatore?
funziona se modifico per esempio cosi':
#include<stdsio.h>
main()
{
   int c, nl;
   nl=0;
   while((c=getchar()) != '0')
         if (c=='\n')
            ++nl;
   printf("%d\n", nl);
}
in questo modo non appena digito 0 (zero) si blocca e da' un responso.
tuttavia non e' comodo, perche' se necessito di digitare uno zero o un
altro carattere da me definito senza che s'interrompa e' un pasticcio.
posso definire una stringa, un serie di caratteri, un carattere speciale
(F1 ad es.) per controllare la fine del prog?
ma soprattutto, come c...o lavora EOF? dipende dal compilatore?
grazie
mirko
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

definito EOF? COSA e' EOF per il compilatore?
[SNIP]
EOF e' un valore numerico, in genere corrispondente al valore -1 (ecco
perche' usi un int per contenere il valore di ritorno della
getchar)... comunque non ti interessa visto che esiste un opportuna
costante EOF, definita in stdio.h
EOF indica che lo stream e' stato chiuso... visto che generalmente lo
stream associato a stdin non viene chiuso, esiste una combinazione di
tasti per forzare l'EOF... sotto Unix e' CTRL+D, sotto Dos mi pare sia
CTRL+Z.
CTRL+C e' un'altra cosa, per sapere cosa leggiti i thread della scorsa
settimana :)
-- 
Mox
"Trust the programmer."
"Don't prevent the programmer from doing what needs to be done."
"Keep the language small and simple."
"Provide only one way to do an operation."

 mirko
Maceta


..sempre pensato Ctrl+d...
Adieu,
-- 
Lestat de Lioncourt                               |          Ciro Mattia Gonano
  JabberID: 
les...@jabber.students.cs.unibo.it
    |    Undergraduate Student in
  ICQ#: 52631406                                  |         Computer Science at
  URL: 
http://www.CS.UniBO.It/~gonano
             |       University of Bologna
            <powered by Linux Slackware 8.1 on Kernel 2.4.18-xfs>
Newsgroup: it.comp.lang.c
Titolo: puntatori, ok, ma...

penso di aver capito come funzionano i puntatori, ma...
potreste farmi un esempio + semplice possibile di un caso in cui il
loro uso sia assolutamente indispensabile?
thanx

 loro uso sia assolutamente indispensabile?
Se fai questa affermazione, allora non hai capito i puntatori!


Ce ne sono a bizzeffe.
Per esempio quando devi allocare a run-time una struttura la cui
dimensione non puoi o non vuoi prevedere in anticipo.
Per esempio, se devi memorizzare una tabella di massimo 10000 posizioni,
in cui ogni posizione puo' contenere da 1 a 10000 numeri interi e
questi valori li saprai solo quando esegui il programma.
Facendo le cose staticamente dovresti allocare un array
int x[10000][10000];
che sarebbe magari tutto spazio sprecato,
mentre una dichiarazione
int **x;
con susseguenti allocazioni dinamiche ti permette di
gestire molto meglio la memoria.
In generale per manipolare stringhe.
Le operazioni su stringhe (quelle gia' definite in
string.h) solitamente ti restituiscono un puntatore.
Per esempio strstr(a,b) prende due stringhe a e b e
ti restituisce un puntatore alla prima occorrenza di b
come sottostringa di a oppure il puntatore NULL se b non
e' in a.
Sempre in generale, per poter scrivere delle funzioni
che modifichino una variabile e quindi mi possano
ritornare in modo agevole piu' di un valore.
etc.etc.
ciao,
g.
Newsgroup: it.comp.lang.c
Titolo: Malloc

Ho appena cominciato a studiarmi l'allocazione della memoria con il c e
vorrei porvi questo quesito: la funzione free serve per liberare memoria
giusto???nel caso qua sotto va messa prima della return??
char* funzione()
...
...
char * str;
if((str=(char *)malloc(sizeof(char))))
...
...
..return str
}
else return "errore"
}//fine funzione
Grazie 1000 a tutti x l'aiuto!
Yuri
--------------------------------
Inviato via 
http://usenet.libero.it


Dipende da cosa vuoi fare, ma direi di no, visto che fai il return dell'area
di memoria allocata, quindi
non perdi il riferimento.
La fn crea il blocco (beh, 1 char !) (prducer), devi decidere il ciclo di
vita del blocco e liberartene quando non
ti serve +.
Stabilisci una convenzione: ad esempio la fn restituisce null se nulla e'
stato allocato o se hai fatto la free all'intero
della fn stessa, non null se il chiamante gestisce il blocco ed deve quindi
fare la free dopo.
ciao

 giusto???nel caso qua sotto va messa prima della return??
La funzione free() serve per libarare un blocco di memoria
precedentemente allocato con malloc() o calloc(). Un blocco liberato
e' non disponibile al programma e un accesso a questo blocco potrebbe
dare luogo a risultati inattesi.
La funzione free() va usata quando il blocco allocato NON SERVE PIU'
ne' per letture ne' per scritture.
HTH
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 else return "errore"
Questo invece è un bell'accrocchio :-)
Il chiamante si aspetta appunto un puntatore valido, tu restituisci una
stringa costante che è un puntatore valido ma ad un'area non modificabile.
Quando il chiamante lo distruggerà, il risultato sarà indefinito.

Newsgroup: it.comp.lang.c
Titolo: borland builder c++ esiste in italiano?

Come da oggetto, e il manuale?
--
Bax

Perdi la speranza... :)))
Dopo un giro su alcuni siti di editori posso dirti che tutto il materiale
per builder risale alle vecchie versioni... :((
Comunque se ti interessa saperlo le versioni in inglese sono benfatte e non
difficili da comprendere.
--
Massimiliano Etere
massimili...@programmando.org
http://www.programmando.org

Newsgroup: it.comp.lang.c
Titolo: AIUTO :(

Qualcuno saprebbe come fare ad inserire delle righe di assembler in un
sorgente c per poi compilare tutto con il Visual c Micro$oft???
In altre parole...e' possibile che il compilatore del Visual c
Microsoft  non digerisca l'assembler?
Grazie anticipatamente!!!
Ciao
Antonino

sorgente c per poi compilare tutto con il Visual c Micro$oft???
usa la keyword __asm, ad esempio:
__asm
	{
	mov ax,0
	int 10h
	}
Gianpaolo Bottin
- Live Long and Prosper -
Newsgroup: it.comp.lang.c
Titolo: Somma con overflow

Come faccio in C a controllare se una somma (diciamo fra int) fa Overflow in
maniera portabile? (su un Intel è abbastanza facile, sapendo come sono fatti
gli interi... Ma io voglio una soluzione portabile, che non presupponga
niente))
--- bye

Massimiliano Alberti wrote:

mmm se ho capito bene il problema, potresti utilizzare un sizeof(int);
esempio:
#include<math.h>
#include<stdio.h>
int dimint,somma;
double nrappr;
dimint = sizeof(int);
nrappr=pow((double)dimint,8.0); /*nrappr rappresenta quanti numeri possono
essere rappresentati con un int*/
somma = 20+35;
if(somma <= nrappr)
printf("Not Overflow");
else
printf("Yes Overflow");
non so esattamente se funzioni bene il codice che ti ho postato .... ma ti
ho dato un idea di come potresti risolvere il tuo problema.
ciao... se non hai capito cosa ho fatto... facci un fischio
ciao by JSMR
-- 
Esistono 10 tipi di persone al mondo, quelli che conoscono
il codice binario e quelli che non lo conoscono.

 printf("Yes Overflow");
Non credi che se 20 e 35 sono int, e somma è int, e (diciamo per ipotesi)
20+35 fa overflow, allora 20+35 difficilmente sarà computabile (e quindi
confrontabile)?
--- bye

 wrote in message
news:Yak1c.8103$36.2...@news4.tin.it...


maniera portabile?
   Clicca qui, e` della settimana scorsa:
 
news:4039041F...@lombardiacom.it
-- 
S.L.

 confrontabile)?
puoi sommare i numeri una unità alla volta ... è lungo ma funziona :P
Newsgroup: it.comp.lang.c
Titolo: Generazione numeri casuali secondo un acerta probabilita'

 
Proposta (mia e non letta da testi per cui prendila con le pinze):
  1 Ti calcoli la gaussiana che esprime la distribuzione che ti interessa
  2 Ti calcoli l'integrale di tale gaussiana
  3 Ti calcoli l'inversa dell'integrale [ Inv(F(x)) = G(y) = x ]
  4 A questo punto dando in pasto a G il risultato del generatore casuale
    "normale" ti dovrebbe dare come risultato un valore casuale "farcito"
  Di 2 e di 3 dovrebbero esserci le formule sui libri di statistica.
Inconveniente gia' individuato nel metodo:
  Oltre ai problemi di approssimazione dati dal calcolo delle formule,
  non utilizzando macchine a precisione infinita avrai una variazione
  della granularita' dell'output.
Se implementi fammi sapere se funziona.
Ciao, Matteo.

La maniera canonica e' il metodo di Box-Muller; guarda un testo di
calcolo numerico (e.g. Numerical Recipes), o lo Knuth, per le spiegazioni.
Ecco il codice:
----------------------Begin file: boxmul.c
/**
 | File: boxmul.c
 |
 | An implementation of the Box-Muller method to obtain normally
 | distributed random numbers.  Uses 'rannum.c' to obtain random
 | numbers with uniform distribution in [0,1].
 |
 | From: Press, Teukolsky, Vetterling and Flannery -- Numerical
 |       Recipes in C (2nd Ed.) -- Cambridge University Press
 |       (1992) -- Pagg. 288-290 .
 |
 | $Id: boxmul.c,v 1.1 1999/05/18 13:37:46 loreti Exp $
 |
**/
#include <math.h>
double boxmul(void)
{
  static int    flag = 0;
  static double gset;
  double        fac, rsq, v1, v2;
  if (flag) {
/**
 | A valid number has been already computed and stored in gset;
 | just return it (and unset the flag).
**/
    flag = 0;
    return gset;
  } else {
/**
 | Pick two uniform random numbers v1 and v2 in the range [-1.0,+1.0] ,
 | in such a way that (v1,v2) is inside the unit circle; then applies
 | the Box-Muller transformation to get two normal random numbers from
 | them.  One is returned, the other saved for the next call.
**/
    do {
      v1  = 2.0 * ranNum() - 1.0;
      v2  = 2.0 * ranNum() - 1.0;
      rsq = v1 * v1 + v2 * v2;
    } while (rsq >= 1.0   ||   rsq == 0.0);
    fac  = sqrt(-2.0 * log(rsq) / rsq);
    gset = v1 * fac;
    flag = 1;
    return v2 * fac;
  }
}
----------------------End file: boxmul.c
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it
Newsgroup: it.comp.lang.c
Titolo: Simulazione comando "net send"

Salve,
ho provato in c a fare dei programmini client/server e vanno bene
:)
Volevo una informazione... ho visto il comando sotto nt "net send" che
manda dei messaggi ad un'altro win NT.
Vorrei simulare questo comando in
c...
sapete che porta usa e se ha qualche protocollo particolare??
Grazie....
xoooox
--------------------------------
Inviato via 
http://usenet.iol.it

 sapete che porta usa e se ha qualche protocollo particolare??
Devi usare le API di Network Management specifiche di Windows.
In particolare NetMessageBufferSend, di cui trovi ampia trattazione
su MSDN.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Ti ringrazio....
Perň c'č un problemino (per me naturalmente)...
Non so
usare le api di windows...
Mica mi potresti fare un mini mini mini mini
esempio??
Ti ringrazio comunque...
Ciao


Newsgroup: it.comp.lang.c
Titolo: scritta luminosa scorrevole

Ciao a tutti, sto provando a scrivere un programmino con il micro di cui 
parlavamo poco tempo fa.
Vorrei realizzare una scritta scorrevole per esempio "ciao", pensavo a una 
matrice di led 7x5 gestita da 7 bit di una porta in uscita, e 5bit di un 
altra in modo da indirizzare qualunque led in modo indipendente.
Ma per far scorrere la scritta mi viene in mente di fare un loop che faccia 
traslare di volta in volta una colonna, per� per farlo dovrei mettere una 
infinit� di condizioni riguardanti tutte le lettere che uso.
Il prof sempre teoricamente a spiegato le LUT, cosi a occhio mi sembra si 
potrebbero usare nel mio caso, pero non saprei di preciso come. Mi sfugge 
qualche metodo pi� figo per far scorrere la scritta? inoltre se volessi 
cambiare scritta vorrei non dover riscrivere tutto il codice partendo da 
zero.
Grazie mille per i vostri consigli
ciao 

 Grazie mille per i vostri consigli
prendi un pezzo di carta, una matita e collega il cervello alla mano.
tra l'altro sei sul newsgroup sbagliato, questo non e' un problema di
C.
Hint:
1) comincia a capire come devi comandare la "matrice di LED" e poi
comincia a fare cose semplici (accenderli in sequenza uno alla volta).
2) comincia a capire cosa sono, cosa servono e come si usano le LUT.
3) comincia a far scrivere alla matrice di led qualcosa di statico,
quando ci sei riuscito pensa a come fare "scorrere" quello che hai
scritto.
Ciao Jack


Gentilissimo...Comunque devo scrivere il codice in c quindi il metodo da 
usare deve sfruttare le sole potenzialit� del c. 

 usare deve sfruttare le sole potenzialità del c.
si, ma tu non sei ancora allo stadio di scrivere il codice in C.
Tu devi ancora capire come risolvere il problema prima in astratto e
poi con il micro (che risorse usare e come usarle).
Dopodiche' puoi pensare a come implementare la cosa in C.
Ciao Jack
Newsgroup: it.comp.lang.c
Titolo: Invalid type argument of 'unary *'

Ho una struttura di questo tipo:
struct Nodo
{
    struct Nodo *parent;
    ...
    ...
    char nKeys;
};
typedef struct Nodo tNodo;
Se voglio controllare (tramite un puntatore ad un oggetto tNodo) se il 
campo nKeys č diverso da zero, dovrei fare:
tNodo *p;
p = ...;
if (*(p -> nKeys))
{
   ...
}
o sto avendo un'allucinazione?
Perchč quell'if mi genera l'errore oggetto del post?
-- 
Quando noi ignoranti eravamo di piů, tutto era piů bello...
(A. Celentano)
Per rispondermi in privato, prima togli l'immondizia dalla testa.

 o sto avendo un'allucinazione?
Stai avendo un'allucinazione. nKeys è di tipo char. L'operatore '*' serve 
a dereferenziare un puntatore. Pertanto l'espressione non è ben formata.
La ricerca dell'espressione giusta è lasciata come esercizio per lo 
studente.
Max

 Perchč quell'if mi genera l'errore oggetto del post?
Ciao,
 e' perche' stai usando un char come se fosse un puntatore! Togli
quell'asterisco, non ti serve!
 Ciao
 Federico

 Max
-- 
Quando noi ignoranti eravamo di piů, tutto era piů bello...
(A. Celentano)
Per rispondermi in privato, prima togli l'immondizia dalla testa ;)

 quell'asterisco, non ti serve!
E' vero!!! Porchimmmondochechosottipiedi!!!
E' che programmo tutto il giorno in VB e MySQL, e ad un certo punto
viene richiesta una modifica urgente ad un programma, e adesso questo
non va bene e lo vogliono in quest'altro modo, e poi viene fuori un bug
che va corretto prima di adesso... E quando mi diletto un po' commetto
queste cazzate :)
Grazie per avermi riportato sui binari :D
-- 
Quando noi ignoranti eravamo di piů, tutto era piů bello...
(A. Celentano)
Per rispondermi in privato, prima togli l'immondizia dalla testa ;)

 Giovanni
Ciao
Darkbyte
-- 
Quando noi ignoranti eravamo di più, tutto era più bello...
(A. Celentano)
Per rispondermi in privato, prima togli l'immondizia dalla testa ;)