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

Ho un problema con la memoria HEAP, devo allocare un albero binario di
ricerca con molti nodi (anche 100000, 1000000) e ogni nodo č di 14 byte, il
problema sta nel fatto che quando supero i 2000 elementi circa la funzione
"malloc" mi restituisce NULL e quindi ho la memoria esaurita.
Ovviamente non posso fare nessuna "free".
Inoltre la procedura ricorsiva di visita dell'albero da sempre errore di
stack overflow.
Io utilizzo il TURBO C++ 3.0 (DOS) con il modello di memoria LARGE.
N.B. Ho provato anche a dichiarare i puntatori "far" ma il risultato č
sempre lo stesso, e ho anche provato a scrivere un programmino di prova che
alloca 3000 nodi dell'albero, ma si blocca anche quello e inoltre
utilizzando la funzione "coreleft()" questa mi restuisce circa 60Kb liberi
all'inizio del programma, questo vuole allora di dire che il turbo utilizza
solo un segmento di memoria ??? magari quello puntato da "DS" (data
segment) ????
NON CI CAPISCO PIU' NIENTE !!!! AIUTATEMI!!!! (please)
am...@hotmail.com
lr54...@silab.dsi.unimi.it
am55...@silab.dsi.unimi.it

In article <01bd3899$58189640$4b5a15c2@default>,

In questi casi si usa un db gia` ben fatto :))
Che mantiene una cache dinamica in memoria ed il resto su file.
cerca *db* e troverai quello che ti serve.
p.e.:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
The Berkeley Database Package (DB) is a programmatic toolkit to
provide database support for applications, including client/server
applications. It includes B+tree, Extended Linear Hashing and
fixed/variable-length record access methods, transactions, locking,
logging, shared memory caching and database recovery. The source
code is freely available, and may be freely redistributed.
For further information, see:
 
http://www.sleepycat.com/db
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ci sono altri tipo: "gdb", etc.
kao.

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

Ciao,
devo usare la funzione valore assoluto, ma abs restituisce il valore
assoluto INTERO (es -123.11 lo restituisce 123)
Esiste una qualche funzione che restituisce il valore assoluto anche con la
virgola?
Grazie!
--------------------------------
Inviato via 
http://usenet.libero.it

 assoluto anche con la virgola?
fabs()
Maurizio.

Newsgroup: it.comp.lang.c
Titolo: ottimizzazione floor

Dato
	int x;
         const SIZE=32;
vorrei trovare
	int i;
il più grande intero che soddisfa
	i*SIZE <= x
Questa dovrebbe essere una operazione banale per una CPU, ma è lunga da 
scrivere in C. Qual è il modo più efficiente di farlo? Ad esempio:
	i = (x>=0) ? x / SIZE  : x/SIZE -1 ;
è l'operazione corretta. Ma credo che
	i = (u32)(x + 0x40000000)/SIZE - 0x40000000/SIZE;
sia molto più veloce... (si assume che x non sia molto grosso in valore 
assoluto e che sizeof(int)>=32).
Che mi dite?
E.


Ok la soluzione semplice ed efficace (almeno per le potenze di 2) è:
	i = x >> 5;
E.
Newsgroup: it.comp.lang.c
Titolo: Aiuto su "Gestione file" per neofita!!

Caio a tutti sono un programmatore alle prime armi e non riesco a risolvere
un
problema con un programma.
In pratica ho scritto un programma che deve trovare dei dati tipo float (o
double) da un file.txt del tipo:
nome sostanza   costante acida  altri dati....
Sostanza A             0.00025             .....
(la struttura č del tipo tabella per intenderci)
perň non riesco a fargli prendere i dati float.
Ho usato qualcosa del genere:
fgets(riga, 255, pf);
/*pf viene da FILE *pf e da fopen=....*/
sscanf(riga, "%20 %f", nomesostanza, costante acida);
Cosa c' č che non va?
Non ce la faccio proprio piů!!!
Grazie a tutti.
-- 
Tnx
Operation Ivy

 wrote:
Esempio :
#include <stdio.h>
int main()
{
    char s[100] = {0} ;
    float f ;
    scanf( "%20s %f", s, &f ) ;
    printf( "Di %s ce n'e' %f\n", s, f ) ;
    return 0 ;
}
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
-----------------------------------------------
Dovro' prendere lezioni di Internet, 
se non sai di Internet non ti considera nessuno 
(Carmen di Pietro) 
-----------------------------------------------

Il problema è che il programma deve prendere questi dati dal file tipo
log.txt!!

 log.txt!!
Puoi lanciare il programma di LaForgia cosi' "Programma.exe <
log.txt"; oppure redirigi lo stdin sul file log.txt; oppure (piu'
semplicemente) usi fscan(file,...), dove file e' un FILE*.
--
 Ciao, Bianco.
 Reply to 
luca....@tiscalinet.it

log.txt!!
Il programma era solo un esempio per farti capire in che modo
"scandire" la stringa in lettura. 
--
Andrea Laforgia (ICQ 87230455)
"I know every element of C" - Ioannis Vranos

Newsgroup: it.comp.lang.c
Titolo: coniglio libro socket

Salve a tutti.
Potete consigliarmi un buon libro sui socket in c?
Volevo sapere se i socket fanno parte dello standart c e se si perche' nel
libro del kernighan non vengono neanche accennati.
Grazie a tutto il news
Ciao


NON fanno parte dell'ANSI C, ed e` per questo che non ci sono nel K&R.
L'implementazione del networking in C (come in C++) e` lasciata a livello di
sistema operativo (infatti socket() e` una syscall, non una funzione), quindi il
socket su Linux e` diverso da quello di Windows che e` diverso da quello di
MacOS, e cosi` via.
Adieu,
-- 
Lestat de Lioncourt  -- a.k.a --  Ciro Mattia Gonano
 Undergraduate student in Computer Science at University of Bologna
 IHGGer #1049   <=>  ICQ#: 52631406   <=>   URL: 
http://www.CS.UniBO.It/~gonano
 Debian admin at 
Students.CS.UniBO.It
 <=> look at headers for my JabberID & GPG
Newsgroup: it.comp.lang.c
Titolo: AIUTOOOOO!!!

c'è una funzione C che mi permetta di inserire una sequenza di tasti (senza
premere INVIO) e assegnarli ad alcune variabili o array?
Come per esempio lo spostamento di un oggetto in alto in basso, a destra e a
sinistra senza premere tutte le volte il tasto invio dopo la sequenza dei
movimenti.

 wrote in message
news:2W1x6.4704$Oz4....@news2.tin.it...

Escludo che sia qualcosa previsto dal C standard. E piu probabile immaginare
un'implementazione specifica a seconda della piattaforma. Su che sistema
operativo vorresti farlo?
Bob Rock

su Windows
"Bob Rock" <there_is_no_business_like_showbusiness@_NO_SPAM_hotmail.com> ha
scritto nel messaggio news:9a2roa$qg3$1...@taliesin.netcom.net.uk...


Newsgroup: it.comp.lang.c
Titolo: Ci riprovo:file che si autocopia?Coem si fa?

Sono un po' alle prime armi e non mi viene propio in mente come far si
che quando eseguo un file.exe lui copia parte del suo codice in una
directori da me scelta!Devo farlo in assembler?Grazie

Ma ke devi fare un virus!?!
Devi copiare tutto il file o parte di esso?

--------------------------------
Inviato via 
http://usenet.libero.it

Newsgroup: it.comp.lang.c
Titolo: esempi sotto Linux e sotto Win

Salve a tutti,
premetto di aver dato un'occhiata al ng ma di non aver trovato nulla e che
stò cercando dei siti con degli esempi di codice c/c++ sotto i sistemi Linux
e Win.
Qualcuno ne conosce?
--
Grazie,
Gilberto

 Qualcuno ne conosce?
All'interno del ng, ho trovato un post nel quale era contenuta la risposta
alla mia domanda. Per cui non c'č piů bisogno di risposta, grazie comunque,
ciao.
--
Gilberto.

Ciao,
ciň che ho trovato nel ng era l'indicazione (utile) per il sito in cui
trovare il compilatore sotto Linux. Perň mi piacerebbe sapere anche se ci
sono dei siti con dei tutorial per il c/c++ sotto Linux.
Qualcuno li conosce?
Ciao e grazie :)
--
Gilberto.
Newsgroup: it.comp.lang.c
Titolo: DLL: HELP!!!

Salve a tutti,
io sono nuovo di questo NG e da poco mi sono avvicinato anche al C. Il
mio problema è questo: non riesco a capire il principio di
funzionamento delle dll. In altre parole, so che in fase di
compilazione (uso il compilatore per win 4.52 della Borland)di un
programma in C posso scegliere tra .exe e .dll ma mi hanno detto che
c'è una profonda differenza tra i due tipi di file. Inoltre vorrei
sapere che differenza c'è tra le librerie .dll e quelle .h 
Infine come si fa a richiamare una dll dal main di un programma in C e
dal Visual Basic, se ci sono differenze (forse sono un po' OT :)) )
Grazie in anticipo per la risposta
	Gianluca

dal Visual Basic, se ci sono differenze (forse sono un po' OT :)) )
Si`, ci sono differenze: niente linker; l'alternativa a LoadLibrary
e` l'uso della clausola LIB nel DECLARE della funzione ovvero
procedura in questione; accesso COM molto piu` facile (con
typelib o interfacce dispatch); possibilita` di usare soltanto le
funzioni (o procedure) con convenzione di chiamata standard
di Windows (identificata come __stdcall, PASCAL, WINAPI, o
altri modi ancora, secondo gli ambienti), NON quelle con altre
convenzioni di chiamata come quella standard C (__cdecl, o
normalmente usata automaticamente da vari compilatori C),
ne` quella con passaggio di argomenti nei registri (__fastcall).
Alex

Newsgroup: it.comp.lang.c
Titolo: di prima mano

Salve a tutti sto c'ercando di capirne un po'
problema Ho il compi.turbo c++
ed ho fatto qusto semplice programma
#include <stdio.h>
#include <stdlib.h>
#include<conio.h>
void main(void)
{
  int a,c;
  printf("\n inserisci 2 numeri");
  scanf("%d",&a,&c);
  printf("\n\nIl risultato e' %d",a*c);
  getchar();
  getchar();
}
Quello che ottengo sono risultati che non comprendo
es. 23*20=23373
Vi ringrazio per l'aiuto
es.

   scanf("%d",&a,&c);
Prova questo:
scanf("%d",&a);
scanf("%d",&c);
Toni



oppure questo
scanf("%d %d", &a, &c);
Matic
Newsgroup: it.comp.lang.c
Titolo: Immagini bitmap...

Ciao,
sono alla ricerca del formato dell'immagini bitmap (.bmp).
Qualcuno di voi sa dirmi qualcosa. (mi basta solo quelle in bianco e nero).
Urbino
p.s.: mi potete rispondere direttamente via email a questo indirizzo
siri...@ipsnet.it
.

 wrote in message
news:775089$m3c$1...@fe1.cs.interbusiness.it...



siri...@ipsnet.it
.
Ho spiegato mille volte perche` ritengo assurdo rispondere
privatamente a domande pubbliche (e di interesse per piu`
persone).  Se pensassi che la risposta interessa solo a te,
non mi sarei neppure disturbato ad aprire 
www.wotsit.org
(la mecca dei formati di file!), digitare bmp, cliccare find, e
fare il copy-and-paste delle tre righe di cui sopra: il mio
tempo, dopotutto, vale quanto il tuo, e non e` che a te
sarebbe costato piu` tempo fare questa ricerca (se non sai
in generale come cercare informazioni sui formati di file,
allora avresti dovuto chiedere "come faccio a scoprire il
formato di un qualsiasi file" -- e anche in questo caso ti
avrei risposto in pubblico, perche` l'informazione potrebbe
interessare anche ad altri che non hanno pensato a
chiederla!).  E` solo perche` penso che le informazioni
in questione possano interessare a piu` persone, che mi
sono dato la (modesta) briga di reperirle -- quindi, le posto.
Alex
Newsgroup: it.comp.lang.c
Titolo: Compilatore C (16 bit) Cercasi

Mi servirebbe quanto in oggetto per creare delle DLL (a 16 bit
appunto).
Se potreste darmi una dritta ve ne sarei grato! ;-)
               --Please also reply via E-Mail--
                      4169522043485253

Se potreste darmi una dritta ve ne sarei grato! ;-)
Il Borland C++ 5 supporta anche il Win16 se può interessarti. Lo
distribuivano su Computer Magazine di aprile.
Ciao, Giuseppe
---------------------------------------------------------------------------
_Guybrush su IRCNet canale #programmazione
ICQ: 42227764
---------------------------------------------------------------------------
Newsgroup: it.comp.lang.c
Titolo: parallel setting

ciaooooooooooooooooo
raga
qualcuno mi puo aiutare devo monitorare la parallela sotto linux I/O
come posso fare?????????
grazie mille

adry wrote:

Sei OT,comunque io mi apposterei dietro il case,magari con una
sciarpetta e non troppo vicino dato che l'aria provocata dalla ventola
puo essere causa di fastidiosi mal di gola, e li aspetterei con la santa
pazienza cercando di scorgere movimenti sospetti.Quando ti sei stancato
e cominci a vedere che ti si annebbia la vista fatti dare il cambio,
ma attento che questo sia accompagnato dal tuo capo-muta altrimenti ROOT
alias il comandante della guardia vi manda tutti al rapporto dal
colonello.
Consigilio turni 2/4
Ivan Molella

grazie mille
Con ioperm(2) e iopl(2) ottieni la possibilita' di accedere agli indirizzi
di io relativi alle parallele.. poi a colpi di in/out vai avanti ...
Se ti interessa qaulcosa a livello kernel ... be' spulciati i file
linux/driver/misc/parport*.c
linux/driver/char/lp.c
In particolare ti suggerisco di dare un occhiata a questo pezzo di commento
tratto da linux/driver/char/lp.c :
---------------------------------
* I discovered this using the printer scanner that you can find at:
*  
*      
ftp://e-mind.com/pub/linux/pscan/
* 
*			11 May 98, Andrea Arcangeli
*
-----------------------------------------------------
P.S. posta su it.comp.os.linux.develpment che e' piu' appropiato, io ho
diretto il followup la'

 Ivan Molella
cazzoooo sei uno spiritosone!!!!!!!!!!!
comunque il mio problema rimane
grazie

 Consigilio turni 2/4
Mi ricorda qualcosa :-(
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

 grazie
  Saro' anche  spiritosone ma non scurrile.
  Il tuo problema rimane forse perche' ti sei rivolto al NG sbagliato, non per
la mia
spiritosagine.....
Ivan Molella

 Mi ricorda qualcosa :-(
Anche a me: Tanta tanta m...a!!!!
Ivan Molella

Ivan Molella ha scritto:

Io saro scurrile ma se ho sbagliato a chiedere basta non rispondere mi sembra
semplice la cosa !!!!!! Invece di prendermi per il cu*o !!!!

 semplice la cosa !!!!!! Invece di prendermi per il cu*o !!!!
Purtroppo qui un'alta percentuale di messaggi sono off-topic e la cosa
rende un tantino nervosi gli interessati al C...
EMG
Newsgroup: it.comp.lang.c
Titolo: sybase

Save a tutti,
devo realizzare un programmino in C ( per mia curiosità ) che mi permetta di
dialogare con un database sybase, mi potete dare qualche consiglio riguardo
alle librerie da utilizzare?
   Grazie a tutti

alle librerie da utilizzare?
Puoi utilizzare i componenti per la gestione di dati e query con C++
Builder e il supporto ODBC.  Ti basta definire un DSN ODBC (supponendo
che il tuo sistema sia provvisto di driver ODBC per Sybase) ed
utilizzarlo come DatabaseName nei componenti suddetti.

Save a tutti,

Io qualche anno fa ho scritto programmi C che dialogavano con
Sybase e SQL Server direttamente con le DB-Library native
(allora praticamente identiche fra i due DB al punto che un
client compilato con le dblib di uno poteva accedere anche
all'altro server). E' molto che non mi occupo di questi problemi
cose e forse ora le cose sono cambiate fortemente.
Se ti interessano dettagli su questo approccio mandami una mail...
penso di poter recuperare su qualche CD di backup qualche
esempio base.
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff

possibile omogeneo ai programmi che già esistono
Puoi comunque sfruttare l'accesso tramite ODBC.
Qualche tempo fa, qualcuno posto' qui dentro delle routine in codice
sorgente.
Newsgroup: it.comp.lang.c
Titolo: Programma che filtri i commenti del file sorgente

Ciao Ragazzi,
esiste un programma che sia in grado di filtrare (togliere), da un file
sorgente C tutti i commenti?
Ciao e Grazie!

.:: P ::. ha scritto:

Se sei un programmatore non dovrebbe esserti difficile farlo no? E' anche un 
bell'esercizio di elaborazione di file...
-- 
Andrea Bergia - studente          Linux Registred User #281550
Per favore non mandatemi allegati in Word o PowerPoint.
Si veda 
http://www.fsf.org/philosophy/no-word-attachments.html


ha scritto:

Ne trovi uno qui:
http://ada2.unipv.it/biblio/trickyc/07c.htm#bm02t
ma leggi la descrizione, infatti come avverte l'autore il programma è
imperfetto, in quanto non considera se i commenti fanno parte di
stringhe, di conseguenza potresti eliminare parti di stringhe
contenenti /*...*/.
Ciao
#######################################
Fabio
fabi...@inwind.it
Studente di Informatica presso
l'Università degli Studi La Sapienza
#######################################


Io ho un programma che lo fa, pero' e' in perl (sono OT?):
#!/usr/bin/perl
use strict;
my $in_file=shift;
die("Inserire il file di ingresso\n") if (!$in_file);
my $out_file=shift;
die("Inserire il file di uscita\n") if (!$out_file);
open (IN, "< $in_file") || die(" Impossibile aprire il file\n");
open (OUT, "> $out_file") || die(" Impossibile aprire il file\n");
my $linea;
my $in_star_comm=0;
my $in_string=0;
while ($linea=<IN>) {
        while ($linea=~/\"|\/\/|\/\*|\*\//) {
                $linea=$';
                if ($in_star_comm) {
                        $in_star_comm=0 if ($& eq "*/");
                        next;
                }
                print OUT "$`";
                if ($in_string) {
                        print OUT "$&";
                        $in_string=0 if (($& eq "\"") && ($`!~/\\$/));
                        next;
                }
                if ($& eq "//") {
                        $linea="\n";
                        last;
                }
                if ($& eq "\"") {
                        $in_string=1;
                        print OUT "$&";
                }
                $in_star_comm=1 if ($& eq "/*");
        }
        print OUT $linea if (!$in_star_comm);
}
close (IN);
close (OUT);
exit 0;
Lo esegui con i parametri <file_sorgente_con_commenti> <file_filtrato>.
Risolve anche il problema del programma proposto da Fabio: non considera le
sequenze di caratteri /* */ e // interne alle stringhe.
DM
--------------------------------
Inviato via 
http://usenet.libero.it
Newsgroup: it.comp.lang.c
Titolo: interi e stringhe

Ciao a tutti ho questo:
int anni [256];
char *mesi[] =
{"Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"};
int anni_dec[53];
char *frase_data[256];
faccio questo lavoro:
for (e=0x00; e <0xFF; e++)
        anni[e] = e;
    an = 1997;
    for (f=0;f<54;f++){
        anni_dec[f] = an;
        an=an+1;}
    aa = 0;
    gg = 0;
   for (g=0;g<256;g++){
        if (g<12){
            frase_data[g] = mesi[aa]+'/'+("%d",anni_dec[gg])+'-'+
("%d",anni[g]);
            aa = aa+1;
            }
        else
            {   aa=0;
                gg=gg+1;
                frase_data[g] = mesi[aa]+'/'+("%d",anni_dec[gg])+'-'+
("%d",anni[g]);
                aa = aa+1;
                }
    }
in poche parole vorrei comporre una frase prendendo i dati dai vari
array non ho errori ma la frase non salta fuori ottengo : sempre ""
per ogni elemento dell'array frase_data
Mi potete date qualche dritta

Anzitutto char *frase_data[56] è un array di "puntatori a char", che
puntano a memoria non allocata e che dovresti almeno inizializzare con
delle malloc()... Poi puoi fare il resto. Anche se non so dirti se
l'operatore di assegnazione prevede che un puntatore a char possa
essere trattato come stringa come fai tu. Magari si, ma su questo non
so aiutarti. Prova comunque ad usare std::string frase_data[56] invece
di char*.

 di char*.
A parte il fatto che questo e' un forum C, non C++, meglio usare std::vector<std::string>

 A parte che questo è un newsgroup, non un forum :P
A parte che si, ho sbagliato, ero convinto di stare su it.comp.lang.c++
Newsgroup: it.comp.lang.c
Titolo: un programmino che usa system

Ciao a tutti,
vorrei fare un programma che incrementa un numero che va a leggersi in un
file.
Il programma deve ripetere le seguenti operazioni argv[1] volte :
-legge il numero dal file
-sleep argv[2] secondi (uso system per chiamare la funzione sleep in linux)
- incrementa il numero e lo sovrascrive nel file
-sleep un altro secondo
A seguire e' quello che ho fatto (poca cosa, lo so), un programmino che
legge un file di input, conta quanti numeri vi sono e crea un array input
dove li salva, Ora -supponiamo il file abbia un solo numero- vorrei riuscire
a passare il numero che legge nel file al comando di sistame sleep, ma come
si fa ??!!
Non sono sicuro che il mio programma sia giusto ed esaudisca le richieste,
in particolare che faccia le operazioni argv[1] volte (cosa vuol dire?) e
sleep argv[2] secondi ....
Grazie per aiuto!
#include <stdio.h>
#include <stdlib.h>
int n;
FILE *fp;
int openread(const char *filename){
    //FILE *fp;
    float counter, number;
 
    n=0;
    if (fp = fopen(filename, "r")){
	while(1){
	    counter=fscanf(fp,"%f\n",&number);
	    if (counter==EOF) break;
	    else n++;
	}
	//fclose(fp);
    }
 
    if (fp == NULL)
       {
        perror("Ooops, an error has occurred\n");
        exit(1);
       }
    else printf("The file %s\t has %d\t number(s)\n",filename, n);
    return n;
}
void usage(const char *prgname) {
     printf("usage: %s <inputfile>\n", prgname);
}
int main(int argc, char *argv[]){
    float *input;
    int i;
        if (argc<= 1)
           usage(argv[0]);
        else {
	    openread(argv[1]);
	    input=calloc(n,sizeof(float));
	    for (i=0; i<n; i++){
		 fscanf(fp,"%f",input[i]);
		}
	    fclose(fp);
		}
	for (i=0; i<n; i++){
	    char *command= ("sleep %f ",&input[i]); //COME SI FA?!?!?!?!?
	     system(command);
	     }
  return 0;
}
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

             system(command);
Se il problema e' solo la creazione del comando la soluzione si chiama
sprintf (o meglio snprintf):
char command[CMD_MAX_LEN];
snprintf(command, CMD_MAX_LEN, "sleep %f", sleep_time);
Occhio che non tutte le implementazioni di sleep accettano un numero non
intero.
Luca
-- 
Home: 
http://kronoz.cjb.net
Soltanto un istante...
tuffarsi nell'infinito...
annegare senza pensieri

Scusa non capisco perche' farlo in C, potresti in meno codice farti un
bellissimo script in bash, sempre se non ho capito male, infatti tu
stai facendo questo codice per linux, quindi potresti benissimo fare in
questo modo:
<code>
#!/bin/sh
for i in `seq $1`;
do
	NUMERO=`cat $2`
	sleep $NUMERO
	NUMERO=$[ $NUMERO + 1 ]
	echo $NUMERO > $2
	sleep 1
done
</code>

Newsgroup: it.comp.lang.c
Titolo: vettore dinamico "indefinito"

Salve a tutti!
Volevo sapere come si possa fare un vettore del genere: un vettore di cui
non si conosce la sua dimensione anche mentre si lavora con esso. Mi spiego.
Esempio 1: il programma deve memorizzare su un vett n numeri da tastiera:
bene, prima chiede all'utente il valore n e poi esegue una malloc per
allocare n elementi (e poi comincia a chiedere ogni elemento....). Non è
questo che voglio. Qui in pratica si sa la dim del vettore PRIMA che si
inizi a operare su di esso!
Io voglio operare sul vettore senza sapere qual'è la sua dim.
Esempio 2: il programma deve memorizzare sul vettore dei numeri presenti in
un file...e non si sa quanti sono. Bisognerebbe allora allocare memoria per
una cella alla volta, usando anche l'aritmetica dei puntatori..ma ci sono
diverse restrinzioni a riguardo.
Praticamente la logica sarebbe:<c'è l'i-esimo dato da immettere nel vett? Se
no, fermati, se si allora alloca un nuovo elemento del vettore (indirizzo
ottenuto dall'ind.iniziale del vettore + i) e copia tale dato su quel
elemento>. Escludiamo ovviamente una soluzione del tipo "prima conto tutti i
numeri nel file e poi...".
Come si può fare?
Qualcuno ha un'idea?
Grazie
Cecco

 un file...e non si sa quanti sono.
Esattamente come sopra. Modifica il tipo di dato dell'array, e personalizza
le funzioni che ti danno il nuovo elemento, e il termine dell'introduzione
dei dati.
Ovviamente il valore reso da malloc e realloc va testato che sia valido
prima di usarlo!
ciao
donCiccio

 ptr=realloc( ptr,sizeof(int)*x );
??? non era per niente cosi' ma :>>> ptr=realloc( ptr,len + 2 );
Non e' molto difficile, provo a rispiegarlo usando il tipo int:
int * ptr=malloc( sizeof( int ) ); // alloco spazio per un elemento perche'
ptr deve essere valido per poter usare realloc
unsigned len=0; // numero degli elementi inseriti, lunghezza del vettore
if( ptr!=NULL ) // check memoria esaurita
{
  while( !fineIndroduzione()   ) // fineIdroduzione() ritornera' 1 quando
non ci sono piu' elementi da aggiungere
  {
    ptr=realloc( ptr,len+1 ); // se sono qui e' perche' devo inserire un
nuovo elemento, quindi rialloco lo spazio del mio vettore
                                         // per contenere un elemento in
piu'
    if( ptr==NULL ) break; // check memoria esaurita
    ptr[len++]=getNuovoDato(); // inserisco il nuovo elemento nell'ultima
posizione e incremento la lunghezza del vettore
  }
}
if( ptr==NULL ) /* Gestione dell'errore memoria esaurita */
{
}
In questo esempio ho aggiunto il test sul valore di ptr sia dopo la prima
malloc fittizia, sia dopo la realloc, ed ho tolto tutto quello che per
l'esempio precedente era necessario affiche' l'array di char fosse una
stringa valida ossia contenesse anche il terminatore '\0'.
Nell'esempio precedente (cosi' come in questo) la variabile len indica il
numero di elementi significativi dell'array, ma nel caso dei char l'array ha
sempre un elemento in piu' alla fine cioe' il terminatore.
ciao
donCiccio
Newsgroup: it.comp.lang.c
Titolo: FD_SET

Salve... cosa sono le funzioni (??) FD_ZERO, FD_SET ?? A cosa
servono?? Grazie.

 servono?? Grazie.
Essendo scritte in lettere maiuscole sono (di solito) (in questo caso sì)
delle macro del preprocessore. Guarda nell'msdn sotto la voce "select" nella
reference del winsock (cerca select e winsock). Occhio che in questo ng il
tutto è OT.
La prossima volta cmq potresti per lo meno provare a cercare da solo usando
il google, lo yahoo e il deja. E magari l'msdn.
--- bye


Ciao e grazie

 da niubbo....
Hai veramente cercato? Ho appena cercato su google "FD_SET", il primo
link e` la manpage che spiega tutto quello che c'e` da sapere.
Cmq se usi linux:
it.comp.os.linux.development
Se usi win:
it.comp.programmare.win32
Luca
-- 
Home: 
http://kronoz.cjb.net
Do, or do not. There is no try.
Newsgroup: it.comp.lang.c
Titolo: Il Tempo di Nettuno

Quanto tempo è necessario perchè una persona qualsiasi possa
imparare con sufficienza  il linguaggio C e possa essere in grado
di programmare?
Mi è capitato ultimamente di dare una sbirciatina ai corsi del
diploma in Ingegneria informatica trasmessi in TV dall'Università
Nettuno. Nell'ambito dell'insegnamento di Fondamenti
d' Informatica I o II (non ricordo bene) si tengono circa 35 - 40
ore di lezione riguardanti il linguaggio C .
Poichè nel primo anno di corso debbono essere sostenuti
10 esami (matematica 1 e 2 , Fisica 1 e 2 Fondamenti di Informatica 1 e 2,
ecc..), il tempo  a disposizione per imparare il C e sostenerne   l'esame è
un mese  (tolte le feste in anno ecc..).
E' una cosa seria o una bufala?
Voi che ne pensate?

 Voi che ne pensate?
Una bufala.
EMG

 ha scritto 
sull‘argomento Il Tempo di Nettuno:


Ti parlo per esperienza diretta:
l'esame puoi anche prepararlo e superarlo in un mese ma da questo a saper 
programmare decentemente ne passa di tempo..

Voi che ne pensate?
Il mio parere e' che in 1 mese non si impara il C.
Servono anni per imparare i linguaggi di programmazione e, ancor
prima, i concetti legati alla programmazione.  I corsi Nettuno sono
organizzati abbastanza bene, ma credo siano soggetti agli stessi
vincoli di una qualsiasi attivita' didattica, ovvero i tempi stretti.
Programmazione e didattica non sono mai andati troppo d'accordo.
Generalmente chi inizia a programmare lo fa senza avere alcun tutor.

 di programmare?
Un conto e' imparare il linguaggio ( sintassi/semantica ), un conto e' 
imparare a programmare. La distinzione e' necessaria, perche' in quasi 
tutti i test che mi sono capitati sottomano, ci sono domandate del tipo
"come passare x riferimento un array" che secondo me ha molto poco a che 
fare con la programmazione ( cosa che dovrebbe essere insegnata 
all'universita ) e troppo con la sintassi.
Ritengo che per imparare la sintassi/semantica 40 ore potrebbero bastare...

 wrote in message 9cpk1l$ut7$1...@nreadA.inwind.it...


Generalmente chi inizia a programmare lo fa senza avere alcun tutor.
e generalmente i tutor/docenti/professori a disposizione non sono in
grado di insegnare a programmare... :-(
--
Antonio Cuni, 18 anni, studente
Brainbench Certification: 
Master C++: 4.6, higher than 98% of all previous test takers.
C Language: 3.32, higher than 79% of all previous test takers.
http://www.brainbench.com/transcript.jsp?pid=1301688

di programmare?
Il C si puň imparare anche in 2 settimane, magari non tutto quanto alla
perfezione (ci sono problemi che emergono solo quando ci paciocchi un po').
Programmare č un'altra cosa. Ci si impiega definitivamente piů di 2
settimane di tempo. Quanto di preciso dipende da quanto č bravo chi ti
insegna, da quanto sei portato tu, etc.
Lanugo
Newsgroup: it.comp.lang.c
Titolo: [?] Puntatori a funzioni in mod. reale

Hi Sir !
Mi sono imbattuto nel seguente problema :
Il servizio 4F01h dell'int 10h ritorna una struttura contenente informazioni
sulla scheda grafica, in particolare un puntatore far ad una funzione, che
secondo le specifiche deve essere dichiarato :
void (far *VesaFunc)(void)
Dopo la chiamata dell'int VesaFunc = C000:2E2A, pero' lavorando in mod.
reale (a proposito uso WatCom 10.0a) e' meglio trasformarlo in un bel C2E2A
(giusto?).
Ora chiamando la funzione con
VesaFunc ();
Si ottiene un bel page fault, con CS:IP = 237:E8D73C9C che non assomiglia
per niente a C2E2A... perche' ?
Ho controllato il valore di VesaFunc anche un attimo prima di chiamarlo e
punta al valore giusto! I registri vengono passati nella maniera giusta
(infatti nel dump che fa WatCom dopo un crash corrispondono alle mie
aspettative).
Cosa posso fare ?
[+] E' possibile compilare un programma che utilizza le Vesa con il C++
Builder 3.0 ?
Scusate per la mail un po' lunga, ma sono nella c...a !!!!
Grazie !

 Il servizio 4F01h dell'int 10h ritorna una struttura contenente informazioni
Questo post e' OT,comunque e' arrata l'operazione che hai compiuto sul puntatore
della funzione;lascialo cosi' come e'.
Ivan Molella

Newsgroup: it.comp.lang.c
Titolo: Tempo e precedenze

sto lavorando sotto Linux e ho due domande:
- come posso fare per sospendere per s secondi definiti da me un processo?
-ho due processi concorrenti che leggono dalla stessa socket come posso fare
per fermarne uno finche' l'altro non ha fatto quello che deve fare e poi
farlo ripartire senza chiudere nessuno dei processi?
se mi fate degli esempi pratici ve ne sarei grato.
--
Shinji Ikari
E-mail : 
neot...@tin.it
UIN: 32671593
"I'm the worst" - "The End of Evangelion"

 wrote:
: sto lavorando sotto Linux e ho due domande:
: - come posso fare per sospendere per s secondi definiti da me un processo?
#include <unistd.h>
sleep(n_seconds); /* vedi man 2 alarm se vuoi implementarla tu */
: -ho due processi concorrenti che leggono dalla stessa socket come posso fare
: per fermarne uno finche' l'altro non ha fatto quello che deve fare e poi
: farlo ripartire senza chiudere nessuno dei processi?
o usi i segnali o qualche forma di IPC per implementare il locking.
Ti consiglio Unix Network Programming volume 2 (IPC) di R. Stevens
spesso non ti servono due processi.. potresti vedere se puoi risolvere
con la select(2) o con i socket non bloccanti.
Secondo la mia modesta opinione questo posting e' off-topic.
Un linguaggio e' un linguaggio... tutti i meccanismi di looking,
i processi eccetera sono cose che riguardano il sistema operativo,
ovvero qualcosa come it.comp.devel.unix (e' un esempio).
antirez

 se mi fate degli esempi pratici ve ne sarei grato.
Oppure una soluzione "sporchissima": prima che uno dei due processi accede alla
socket,crei un file flag che rimuovi quando le operazioni compiute sono
terminate.Ovviamente l'altro preocesso prima di agire sulla socket dovra'
verificare che il file non esista.
Ivan Molella
Newsgroup: it.comp.lang.c
Titolo: CVS

Qualcuno mi spega come si usa questo strumenTo???
-- 
GRAZIE
<<SAX>>
E-mail:
linefin...@tiscalinet.it
Web Page:
http://it.geocities.com/xeus23/

 Qualcuno mi spega come si usa questo strumenTo???
Ma che c'entra con it.comp.lang.c??? E poi c'è google...

 
http://cvsbook.red-bean.com/cvsbook.html
Se l'inglese ti da` fastidio, su LinuxPro c'e` attualmente un tutorial (finora
di due puntate) sul suo utilizzo.
Adieu,
-- 
Lestat de Lioncourt  -- a.k.a --  Ciro Mattia Gonano
 Undergraduate student in Computer Science at University of Bologna
 IHGGer #1049   <=>  ICQ#: 52631406   <=>   URL: 
http://www.CS.UniBO.It/~gonano
 Debian admin at 
Students.CS.UniBO.It
 <=> look at headers for my JabberID & GPG
Newsgroup: it.comp.lang.c
Titolo: Mi sfugge qualcosa sui const e l'inizializzazione

$ cat const_test.c -n
     1  #include <stdio.h>
     2
     3  const int a = 3;
     4  const int b = 4;
     5  const int c = a + b;
     6
     7  int main() {
     8      const int x = 5;
     9      const int y = 4;
    10      const int z = x + y;
    11      printf("a = %d, b = %d, c = %d\nx = %d, y = %d, z = %d\n",
a, b, c, x, y, z);
    12  }
$ gcc -W -Wall -std=c99 -pedantic const_test.c -o const_test
const_test.c:5: error: initializer element is not constant
$
Perché ho l'errore alla riga 5? dopotutto a e b sono costanti!
Ma anche :)
Perché *non* ho l'errore alla riga 10? dopotutto sto assegnando il
risultato di una somma ad una costante!
Che poi tutto è nato da un altro fatto:
$ cat -n struct_test.c
     1  const unsigned MAX_SIZE = 1000;
     2
     3  struct s {
     4      unsigned size;
     5      char s[MAX_SIZE];
     6  };
     7
     8  int main() {
     9  }
$ gcc -W -Wall -std=c99 -pedantic struct_test.c -o const_test
struct_test.c:5: error: variably modified ‘s’ at file scope
$
Sapete illuminarmi?

 risultato di una somma ad una costante!
Perché non è una variabile globale.
Max

 le espressioni che le contengono. 
...perché le variabili globali const non sono costanti?!
nel senso, ma allora const che ce lo metto a fare?
-- 
By ZeD

 C'è un motivo dietro questa scelta? Ma anche ammettendolo...
Probabilmente il problema è dovuto al fatto che una variabile const può 
essere dichiarata in una unità di compilazione e inizializzata in 
un'altra. Dunque al momento della compilazione il valore di una 
variabile globale const, potrebbe non essere disponibile.
E.

 nel senso, ma allora const che ce lo metto a fare?
Bella domanda! :)
Questa e' una delle idiosincrasie piu' strane del C (infatti in C++ la 
cosa e' stata risolta diversamente: una delle differenze tra C e C++)
penso che ormai per il C abbiano preso una scelta diversa per 
compatibilita' con il codice gia' esistente.
Un oggetto const e' "read only" ed esiste nello spazio di memoria del 
programma, come una normale variabile: puoi prendere il valore, puoi 
prenderne l'indirizzo, ma non puoi scriverci dentro.
ciao
Giacomo

Newsgroup: it.comp.lang.c
Titolo: copia di un file

Salve a tutti, volevo sapere se questa funzione va bene
per copiare sia file binari che di testo o se funziona solo con uno
dei due tipi
(o non funziona del tutto... ;-)  )
#include <fstream>
void copia(const char * origine, const char * destinazione)  {
    std::ifstream in(origine);
    std::ofstream out(destinazione);
    out << in.rdbuf();
    in.close();
    out.close();
}

cyg...@gmail.com
 ha scritto:

Dovresti chiedere nel newsgroup dedicato al C++.
Newsgroup: it.comp.lang.c
Titolo: chiarimento

ciao a tutti
scusate ma sono proprio alle prime armi e non riesco a capire una cosa
datoi il seguente codice:
#include <stdio.h>
int main(int argc, char *argv[]) {
int pid, status;
pid = fork();
if(pid==0) printf("sono il figlio"");
else
{
	wait(&status);
	printf("sono il padre")
}
}
non riesco a capire l'uso della wait con &status
status è una variabile intera, ma che non viene inizializzata! (o mi
sbaglio?)
che senso ha chiamare la wait con &status che dovrebbe ritornare
l'indirizzo di memoria della variabile status??
scusate ma ho una gran confusione in testa, non infierite sulla mia
ignoranza ma fatemi capire
grazie tantissime

 
The  wait  function suspends execution of the current process until a
child has exited [..]. If status is not NULL, wait store status
information in the location pointed to by status.
Quindi.. dopo la chiamata a wait(&status), la variabile "status" conterrà
il valore con il quale il figlio avrà terminato l'esecuzione (per farti
un esempio se la funzione main termina con "return 1983;" il valore di
status dopo la chiamata wait() sarà 1983.
Non c'è bisogno di inizializzarla la variabile visto che ci pensa wait()
ad assegnargli un valore.. e come ogni funzione che assegna un valore ad
una variabile locale alla funzione chiamante ha bisogno di un suo
puntatore (se non avessi passato un puntatore, avresti ottenuto un
passaggio per copia di valore.. cosa inutile qui).
Ciao
M

 passaggio per copia di valore.. cosa inutile qui).
oooohhhhh!!
grazie mille per l'aiuto!
ciao
-- 
"la gente è miglior spettacolo del mondo, e non si paga il biglietto."
C.Bukowski
Ps togli el. e sostituisci invalid con it se vuoi scrivermi
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 grazie mille per l'aiuto!
In ogni caso, il newsgroup migliore per chiedere su questi argomenti č
it.comp.os.linux.development o qualsiasi ng rivolto a UNIX & C.
-- 


 it.comp.os.linux.development o qualsiasi ng rivolto a UNIX & C.
A volte ho l' impressione che  in questo NG ci sia un po' troppo la 
tentazione di chiudere qualsiasi discussione che anche lontanamente 
puzzi di OT. Pero' in questo caso, indipendentemente da cosa veramente 
fa la function wait, la domanda ammetteva una risposta attinente al C, 
nel suo standard corrente: una variabile che compaia nella forma 
&variabile tra gli argomenti di una function, puo' tranquillamente non 
essere inizializzata perche' il suo valore puo' essere modificato dalla 
function. Probabilmente la risposta sarebbe servita ugualmente.
Insomma, rilassarsi un po' ? Tutto sommato il C serve a scrivere 
programmi per il mondo reale, non solo per erudite esegesi dello 
Standard. Se poi la discussione verte su strane particolarita' dell' 
architettura XY sono completamente d' accordo a considerare la cosa OT.
Ma cercherei di posizionare un po' piu' alta di cosi'  la soglia di 
"intervento".
Giorgio

 Insomma, rilassarsi un po' ? 
Appunto, rilassati: io nella mia risposta ho dato un aiuto valido tanto
quanto quello dato da altri sull'aspetto prettamente attinente al
linguaggio.

Newsgroup: it.comp.lang.c
Titolo: Problema di dichiarazioni multiple

Ciao a tutti...ho creato un progetto composto da diversi file *.c e *.h, in
uno dei file *.h ho inserito tutte le tabelle che vengono utilizzate nel
progetto e ho incluso il file *.h nei vari file *.c che fanno uso di tali
tabelle. Il problema è che mi viene restituito un errore di dichiarazione
multipla delle tabelle. Come posso fare per ovviare al problema cercando di
mantenere tutte le tabelle raggruppate nel file *.h? La struttura del file
Table.h è la seguente:
#ifndef __DAB_Table_H__
#define __DAB_Table_H__
 
int Table1[48][5]=....
int Table2[48][5]=....
....
....
#endif
grazie!
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 grazie!
http://c-faq.com/decl/decldef.html
Ciao.
Newsgroup: it.comp.lang.c
Titolo: timer con thread posix

Ciao, nella mi applicazione ho 4 thread, completamente indipendenti, che
non condividono nessun dato. Ognuno di essi colloquia con un dispositivo
hardware.
Ora, ipotizziamo che io debba mandare un messaggio ad ogni dispositivo
ogni 30 minuti.
Ho un thread "di controllo" che, ipoteticamente, potrebbe mandare un
impulso a *tutti* i thread "di comunicazione". I thread mandano il
messaggio, e poi si rimettono "a dormire":
//thread di controllo
while(1)
{
 sleep(1800);
 manda_notifica(xxx);
}
// thread di comunicazione
while(1)
{
 aspetta(xxx);
 manda_messaggio_al_dispositivo(&dispositivo);
}
Come realizzo questa cosa con i thread POSIX? Ho provato ad usare
pthread_cond_broadcast e pthread_cond_wait ma mi fanno partire un thread
solo; inoltre non sono sicuro di fare la cosa giusta con il mutex (che,
in questo caso, onestamente non mi serve).
ciao e grazie
as

 ha scritto nel 
messaggio news:47eaa0f7$0$37198$4faf...@reader3.news.tin.it...

Pare che questo sia un argomento al limite dell' OT ;-)
comunque, prima di usare la pthread_cond_broadcast accertati che *tutti* i 
thread
*abbiano* gia' chiamato la pthread_cond_wait, ovvero devono essere sospesi, 
altrimenti i
thread che arrivano *dopo* che la broadcast ha agito....rimarranno sospesi 
(cerca: Lost wake up)
Il mutex serve perche' e' li' che il thread si blocca e dove il broadcast 
agisce.
bye,
brix

Newsgroup: it.comp.lang.c
Titolo: Chiamata di due funzioni nel medesimo case (switch)

Cosa c'è di sbagliato in questo?
 
switch(scelta) {
case 1:
      n = immissione();
      ordinamento( n );  // la funzione mi ordina gli elementi
introdotti precedentemente da immissione, che agisce su un array
globale int vet[MAX_ELE].
      break;
case2: ecc...
Al caso 1 io voglio far chiamare 2 funzioni. Però il compilatore si
arrabbia...
Funziona invece se alla fine della funzione immissione, metto
ordinamento:
int immissione()
{
int i, n;
do {
  printf("\nNumero elementi: ");
  scanf("%d", &n);
}
while (n < 1 || n > MAX_ELE);
for(i = 0; i < n; i++) {
  printf("\nImmettere un intero n.%d: ",i);
  scanf("%d", &vet[i]);
}
ordinamento (n);
return( n );
}
Ma perchè? Qual'è la differenza?
Grazie

 arrabbia...
Ovvero? Cosa ti dice?
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 
http://www.Mailgate.ORG
-- 
Inviato da Virgilio 
http://newsgroup.virgilio.it
..un servizio di news via web con in piu' l'antispam
Newsgroup: it.comp.lang.c
Titolo: ATTENZIONE PREGO!

Salve a tutti programmatori! Sono per esporvi alcuni problemi:
1) Come faccio a creare un TSR ? (Gradirei molto se qualcuno potesse darmi
qualche dritta su come trovare una guida che mi introduca l'argomento
cosicchè possa svilupparlo da solo)
2) Come posso in C aprire una porta nel mio computer di modo che si instauri
una connessione CLIENT/SERVER ?
3) Come posso fare un programma che copi parte (o parti) del suo codice in
un altro ?
Ringrazio chiunque sappia rispondermi.
Ciao.

 Ringrazio chiunque sappia rispondermi.
Sei OT, qui` non si costruiscono backdoor. Cerca su google.
ciao
K
-- 
Home: 
http://kronoz.cjb.net
"New processes are created by other processes, just like new
 humans. New humans are created by other humans, of course,
 not by processes." -- Unix System Administration Handbook

Newsgroup: it.comp.lang.c
Titolo: Vorrei iniziare....

Ciao!
ho da poco installato linux, e devo dire che questo S.O. e' davvero
interessante, tra l'altro ho trovato un compilatore il gcc se non
erro...e per tanto volevo iniziare a sperimentare un po' di C.
Ora volevo chiedervi se meglio C o C++
quello che mi piacerebbe saper fare con C non e'la grafica o i giochi,
(troppo difficile hehehe) ma vorrei imparare a creare piccoli programmi
che si basano sui protocolli di rete,o saper modificare qualche sorgente
della mia distribuzione, visto che qui' a differenza di windows il
codice c'e' e si vede!
Ho piccole esperienze di programmazione
javascript,vbscript,Asp,Visual Basic....
di tutti questi linguaggi, quando ne ho avuto bisogno, ho approfondito
alcuni aspetti,legati alla relizzazione di alcuni siti a cui ho
partecipato...ma nulla di piu' (sono un praticone!)
grazie per le risposte!
buon lavoro
" Caro ho un regalo per il tuo compleanno!
  Cosa??
  Sono in cinta!!!!
  ....bastava un portachiavi..."
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 cut >
Nessuno dei due, dipende appunto da che vuoi fare.
I sorgenti di Linux molto probabilmente saranno scritti in C quindi per
te è "meglio" il C.
Ciao !
Nicholas

codice c'e' e si vede!
Per programmi che si basano su protocolli devi ovviamente imparare il
funzionamento dello stack TCP/IP del tuo OS e le relative funzioni (se
vuoi ti posso inviare qlc sorgente in C per Linux). Riguardo alle
modifiche invece ti consiglio:
[user@localhost - /]: cd usr/src/linux
divertiti :)
<mode propaganda on>
Date le tue necessità, e se non vuoi scrivere troppo codice ti
consiglio Python che ha funzionalità di rete che nemmeno ti immagini
:)
<mode propaganda off>
--
Rhymes
rhy...@myself.com
" ride or die "

 consiglio Python che ha funzionalità di rete che nemmeno ti immagini
ne ho gia sentito parlare!
dicono che sia facile e potente....ma a quanto vedo non ci sono molti
siti e molta documentazione
:(
grazie!!!!!


siti e molta documentazione
beh i siti ufficiali sono due
www.python.org
 -> dove trovi praticamente tutto quello che ti serve
per iniziare
www.python.it
 -> un pò di materiale in italiano
poi ti consiglio 
www.aleax.it
 e leggiti i doc introduttivi
cmq se vuoi puoi postare su it.comp.lang con il tag [PYTHON]

Newsgroup: it.comp.lang.c
Titolo: R: Crash di sistema con condice

prova con un INT 0x10 ...
funziona!
Ciao,
Pierluigi.
P.S. Deve essere un eseguibile PE.
You wrote:
Ciao,
vorrei sapere come e' possibile da codice causare un crash di sistema ( la
classica schermata blu di Window dalla quale non si riesce piu' ad uscire
...).
Mi ricordo che una volta avevo trovato del codice in Assembler ( qualcosa
del tipo MOV EAX,0 ...) ma non lo trovo piu' .. :((
Grazie
Michele
________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at 
http://www.hotmail.com
--
Posted from [62.11.123.116] by way of 
law-f116.hotmail.com
 [209.185.131.179] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 P.S. Deve essere un eseguibile PE.
Grazie,
 proprio quello che cercavo.
Ciao,
 Michele

 > vorrei sapere come e' possibile da codice causare un crash di sistema ( la


Scusa la mia ignoranza ma con gli interrupt non me la cavo ancora molto bene
[sorry i'm a newbie]
ma con un sempice "asm int .... ;" non funziona mi puoi fare un esempio di
programma C funzionante??
Grazie
-=[Filippo]=-

Newsgroup: it.comp.lang.c
Titolo: Perkè nn funziona?

Ciao ragazzi,
è la prima volta che posto.. spero che almeno voi possiate aiutarmi.
Vi allego la porzione di codice che non funge.
'Dovrei' aprire un file di testo (.txt), leggere riga x riga ed
inserirla nell'edit box che ho creato!
Il problema è che non mi visualizza l'intero file.. ma sovrascrive di
volta in volta le righe nell'edit (nella prima riga).
Mi sapreste dire dov'è l'errore?
Vi rigrazio...
[......]
 //  edit box
    edit2=CreateWindowEx(WS_EX_CLIENTEDGE, "EDIT","", WS_CHILD |
WS_VISIBLE | WS_VSCROLL | WS_HSCROLL  | ES_MULTILINE  | ES_AUTOVSCROLL
| ES_AUTOHSCROLL, 300,60,400,390, hwnd, (HMENU)ID_EDIT2,
GetModuleHandle(NULL), NULL);
    SendMessage(edit2,
WM_SETFONT,(WPARAM)GetStockObject(DEFAULT_GUI_FONT),0);
 
 
[.......]
              fp = fopen(dir, "r");
              if(fp==NULL)
                MessageBox (NULL,"\tImpossibile aprire il file di
input" , "ERROR : Apertura File", 0);
              else            
                 { 
                   while (fgets(line, sizeof line, fp))
                    {
                     SetDlgItemText(hwnd, ID_EDIT2, (LPSTR) line );
 
                    }
                  fclose(fp);             
                 }
 
 
            }
[.........]

 Mi sapreste dire dov'è l'errore?
Nel NG. Qui sei OT.
Azathot

 Nel NG. Qui sei OT.
 
cioč? scusa l'ignoranza, cosa vuol dire?

 cioè? scusa l'ignoranza, cosa vuol dire?
Significa che il tuo problema (nonostante tu sit programmando in C) non e'
legato al C ma alla programmazione Win32.
Questo e' un NewsGroup che tratta di C basta, C standard. Se hai un problema
di C ok, se hai un problema diverso (come nel tuo caso) sei OT, Off Topic!
Non ti disperare ci sono newsgroup dedicati al tuo argomento come
it.comp.os.programmare.win32
Cerca di capire esistono tantissimi NGs ed ognuno tratta un argomento
specifico. Sembra un pochino rigida come cosa ma altrimenti si instaurerebbe
un chaos e non si distinguerebbe piu' it.comp.os.programmare.win32 da
it.comp.lang.c e da it.comp.lang.c++ etc... sarebbero tutti la stessa cosa e
non avrebbero ragione di avere nomi diversi.
Tommy

 it.comp.os.programmare.win32
thk tommy!ho capito.. no,no, è giustissimo!
Il mio problema sinceramente era il fatto che non sapevo dove cercare..
Ti ringrazio x il suggerimento.. posterò 'solo' su info/dubbi relativi al C..
Un'ultima cosa.. ho provao a cercare su gruppi geogle 
it.comp.os.programmare.win32 
ma non c'è nessun NG...
in "os" ci sono solo:
     it.comp.os.amiga.* (1 gruppo)       it.comp.os.linux.* (5 gruppi) 
     it.comp.os.as400                    it.comp.os.os2 
      it.comp.os.dibattiti                it.comp.os.unix 
      it.comp.os.dos                     it.comp.os.win.* (6 gruppi) 
Scusatemi x l'errore! ;)