mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: Concatenazione std::string

Un piccolo problema:
Dichiaro:
char str;
std::string parola1="";
In un ciclo che leggo fa un file di testo devo concatenare i vari caratteri.
str=getc(fp);
parola1.c_str=(parola1.c_str+str);
Il compilatore mi segnala impossibilità.
Ho provato anche con:
parola1[i]=str;
il compilatore non trova errore ma in fase di esecuzione salta (credo perchè
ho inizializzato parola1 con "").
Come posso fare?
Grazie

 Come posso fare?
Ti consiglio di guardarti un po' di reference del c++, basta per esempio 
anche il classico 
www.cppreference.com
, perche` hai le idee un po' 
confuse, comunque nel caso specifico puoi fare qualcosa di simile:
std::string parola1;
char c = getc(fp);
parola1 += c;
parola1.c_str() non andrebbe mai usato in scrittura, ma solo in lettura 
per funzioni c che necessitano stringhe in formato C come atoi().
Bye,
  Gabry

 Grazie
Hai piů di un problema, ti consiglio di studiare di piů: questi problemi non
si risolvono a suon d'imboccate.
Ci sono ottimi libri, anche in rete, es. Thinking C++ vol 2 che tratta bene
la STL e le sue classi.
Newsgroup: it.comp.lang.c++
Titolo: metodi

può un metodo restituire più di un valore?




 
http://www.winchester.cjb.net
a Debian GNU/Linux "Slink" is running on Linux 2.2.14
mv "ANY SPAM" /dev/null
P.S.: Never try the command "rm -rf /" by root
Gia', sono molti mesi che non vedo uno schermo blu sui miei NT!
Ma mettere un monitor a colori, no eh??
		--Under GPL by Obelix

 puň un metodo restituire piů di un valore?
Magari restituendo un tipo aggregato?
EMG

puň un metodo restituire piů di un valore?
basta utilizzare le strutture oppure + parametri passati
per reference...
Paolo
--------------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
--------------------------------------------------

 puň un metodo restituire piů di un valore?
la tua sintetica domanda si presta a piu' risposte. Provo ad
interpretare la
domanda:
1) puo' un metodo ritornare un tipo non built-in, per esempio una
struttura o un array?
risposta:
si. Puoi far ritornare da un metodo, per esempio, un std::vect con un
nunero
arbitrario di, per esempio, interi.
2) puo' un metodo ritornare differenti tipi  in funzione degli argomenti
con cui lo invoco?
Risposta:
si. puoi effettuare l'overload dei metodi. Per esempio:
class esempio
{
    public:
    int calcolamiqulcosa(int intargomento);
    float calcolamiqualcosa(int intargomento, float floatargomento);
    float calcolamiqualcosa(float floatargomento);
}
In questo modo hai un diverso tipo di valore ritornato dal metodo
3) Puo' un metodo essere differenziato in comportamento da un altro
metodo SOLO
dal tipo di valore di ritorno?
risposta: no
un metodo, cosi' come una normale funzione, non puo essere overloaded
differenziando solo il tipo. Se esistessero in un programma (o in una
classe)
due funzioni con lo stesso nome e gli stessi parametri ma con differente
tipo ritornato,
class esempio
{
    public:
    int calcolami();
    float calcolami();
}
come potrebbe il compilatore risolvere:
int main()
{
  esempio es;
    es.calcolami(); // quale calcolami si usa qui?
}
Newsgroup: it.comp.lang.c++
Titolo: Compilatore C/C++

Dove posso trovare un compilatore ANSI C/C++
(per DOS/WINDOWS)? Io ho il borland Turbo C++ ma avrei
bisogno di un compilatore che supporti namespace, ge-
stione delle eccezioni etc. Grazie per l'aiuto.
Luisa


www.delorie.com/djgpp
 : compilatore per dos/win
www.mingw.org
  : per win32
Alberto Griggio
alb...@tiscalinet.it

 ha scritto nel messaggio
news:8ti61j$4kv$1...@nslave2.tin.it...

Borland C++ 5.5.
E' a riga di comando ed è free (ma leggi comunque
la licensa).
E' uno dei compilatori più aderenti allo Standard disponibili.
Manlio Perillo

 wrote in message
8tjiht$jm7$3...@nslave3.tin.it...

---
Grazie, le tue indicazioni insieme a quelle di altre persone mi hanno
permesso di trovare il compilatore.
Luisa

 wrote in message
39FD69F5...@tiscalinet.it...

Grazie a te ed alle altre risposte ho trovato cio' che cercavo.
Ciao
Luisa


wrote:

DJGPP (scaricabile da 
www.delorie.com
 ) oppure BCC32, io possiedo
entrambi ma preferisco nettamente il primo. Sono entrambi freeware.
Il Ghenio
-----------
LOVELY SARA
Dal lunedi'al venerdi'su Italia Uno alle 8:10
Non perdetevelo...
-----------

 entrambi ma preferisco nettamente il primo.
E come fai con la libreria standard che nel DJGPP è veramente
disastrosa?
EMG

Newsgroup: it.comp.lang.c++
Titolo: Copia IMPOSSIBILE

Salve a tutti,
vorrei copiare un programma che ho creato con Visual C++ 4.0 su un computer
di un mio amico. Ho copiato anche  7 file .dll e  2 .ocx che servono al
programma ma nulla da fare !!! NON GIRA !!!
Sto uscendo pazzo. Potreste darmi qualche consiglio ??
Grazie
Ps. potete scrivermi in posta. Forse č meglio !
lapa...@iqsnet.it
 



Ps. potete scrivermi in posta. Forse č meglio !
Ok, fatto.
Gianpaolo Bottin
- Live Long and Prosper -
Newsgroup: it.comp.lang.c++
Titolo: eliminare file

Ciao, volevo sapere se per cancellare i file c'è un'alternativa a
system("del ...") perchè sto sviluppando un'applicazione windows form
con VC++ e utilizzando system("del ...") si apre la console di ms-dos

[...]sto sviluppando un'applicazione windows
BOOL DeleteFile(LPCTSTR lpszFileName)
E' contemplata dall'API di Windows.
In ogni caso, in questo ng si preferisce discutere di C++ nella sua
forma standard, quindi sorvolando sulle questioni strettamente legate
alla piattaforma, come queste.
Benché tu voglia sviluppare la tua applicazione con un'implementazione
di C++ per Windows, la questione riguarda più la piattaforma di
utilizzo, che il linguaggio, quindi rivolgiti al ng specifico:
it.comp.programmare.win32
Imposto il follow-up su quel gruppo.


int remove(const char *filename) di <cstdio> non funziona su
piattaforme non Unix?
--
Saludos
Adriano

 piattaforme non Unix?
Funziona ma non sono riuscito a risolvere il mio problema perchè non
avevo pensato che non ci sono argomenti per cancellare più file e in
tutte le sottocartelle come "del C:\*.tmp /s".
Se qualcuno sa come fare
Grazie

 piattaforme non Unix?
Funziona ma non sono riuscito a risolvere il mio problema perchè non



Ok, se non vuoi proprio una risposta del tipo "te lo devi programmare
da te, in standard C++ non c'è", devi chiedere su
it.comp.programmare.win32. Come ha detto mr. Laforgia, questo ng non
si occupa di piattaforme specifiche.
--
Saludos
Adriano
Newsgroup: it.comp.lang.c++
Titolo: LIBRERIE DEL C++

Qualcuno puo' gentilmente spiegarmi qual è la funzione della libreria 
#include<stdlib.h>.
Perche' la inseriamo?
Ho capito perche' usiamo quella di
#include<iostream.h>,ovvero per poter usare cin<< e cout>>,
invece a che serve l'altra?
grazie mille(in anticipo)!

 #include<iostream.h>,ovvero per poter usare cin<< e cout>>,
Io invece non ho capito perche' usate <iostream.h> visto che cin e
cout si trovano in <iostream>.
        Mauro

 ha scritto nel messaggio 
news:87655u3...@iperbole.bologna.it...


 cout si trovano in <iostream>.
In <iostream> si trovano std::cin ed std::cout; forse loro usano 
<iostream.h> perche' non sanno/non vogliono scrivere std:: ma 
semplicemente cin e cout? :-)
...comunque, concordo in pieno che bisogna deprecare l'uso dei vecchi 
header C++ come <iostream.h> in favore del nuovo standard <iostream> 
(idem per gli altri).
Al massimo si da un "using std::cout;" se uno vuole scrivere solo 
cout... :)
Dan

 invece a che serve l'altra?
Innanzitutto, come altri hanno gia' sottolineato, si dovrebbe usare 
<iostream> (_senza_ .h). Inoltre, avrai std::cin ed std::cout (vedi 
concetto dei namespace C++).
La <stdlib.h> (o _meglio_ <cstdlib>) la #includi se ti servono delle sue 
funzioni :-) (se no e' inutile :)
Ad esempio, nel tuo programmi usi la funzione _C_ system() ? In questo 
caso devi #includere stdlib.h.
L'inclusione di un header non e' un dogma di fede :-) Ma semplicemente 
un passo necessario per usare una o piu' funzioni od oggetti dichiarati 
in tale header. :)
Ciao, e buono studio del C++
Dan
PS: 
Il subject tutto maiuscolo e' un po' lontano dalla netiquette...

francesca.m wrote:

ciao,
  ma scusa un attimo in che amibito si azzardano a dirti che stdlib.h è un
header c++ ????  Ti consiglio un libro. "The C++ programming language" di
B. Stroustrup almeno li è spiegato come programmare in C++....
buona serata,
  nelson
-- 
- Vedi, cara, l'amore e' una cosa, il sesso un'altra.
- E la roba che facciamo noi come si chiama?
  -- Da it.hobby.umorismo
Newsgroup: it.comp.lang.c++
Titolo: correggetemi se sbaglio!

Se definisco la classe A in modo tale che un suo attributo sia
	std::vector<B*>
il distruttore della classe A chiama il distruttore dei vector.
Questo a sua volta distrugge gli elementi che lo compongono, ovvero,
poichè si tratta di puntatori, mi aspetto che ne faccia la delete.
La delete chiama il distruttore della classe B.
Se le classi A e B non contengono puntatori, non ho bisogno di deinire
esplicitamente i loro distruttori per garantire la liberazione dell'heap
occupato per il vector???
	vero o falso?
		Grazie Veruska.

                 Grazie Veruska.
Prego,
Nicola

 	vero o falso?
Falso. Distruggere un oggetto di tipo T*, non significa applicare delete.
Il distruttore di vector<T*> non esegue il delete sui vari elementi ed è
giusto che sia così, perché non può sapere se la distruzione degli oggetti
puntati sia ciò che il programmatore vuole, né se sia una cosa possibile;
i puntatori potrebbero in effetti puntare ad oggetti automatici, ad es:
 int  i;
 vector<int*> v;
 v.push_back(&i);
Pensa che disastro se il distruttore di v facesse un delete &i...
Nel tuo caso, se A ha un membro vector<T*> i cui elementi rimandano a
oggetti allocati dinamicamente e il cui lifetime è controllato da A puoi
aggiungere nel distruttore di A il codice necessario per distruggere tutti
gli oggetti. Attenzione però: se non definisci un adeguato costruttore
copia, ogni capia di A replicherà i valori dei puntatori nel vettore del
nuovo oggetto A; senza dovute precauzioni, entrambi gli oggetti A
finiranno per fare il delete sugli stessi puntatori (o meglio: su
puntatori diversi con lo stesso valore), con risultati... disastrosi.
Max

Newsgroup: it.comp.lang.c++
Titolo: Info-Esempio _kbhit

Ho un problema....
Sto adesso incominciando a Usare il Linguaggio C++
Per adesso in Console Application.................!!
--------------------------------------------------
Chi mi puo far un sempio di codice per farmi capire la funzione
del comando  _kbhit.() ?
----------------------------
Il comando dovrebbe avere lo scopo di esercitare da parte dell'utente una
pressione di un tasto...Credo...!!!
------------------------
Se per esempio se creo un cliclo for per stampare una lista di di numeri. in
output..come faccio a farlo stoppare ogni 20 righe...?
---------------------
Ringrazio anticipatamente...!! By Marlbory
--------------------------

 output..come faccio a farlo stoppare ogni 20 righe...?
Non č necessario usare kbhit.
int n=3000; //ad esempio
int s=20;
int j;
for(j=0;j<n;++j)
{
	printf("%d\n",j);
	if(j%s == s-1) getchar();
}

 ha scritto nel messaggio
news:%rs1a.98176$YG2.2...@twister1.libero.it...


cosdec ha scritto:

Premi return dopo il ventesimo numero e dovrebbero apparirti gli altri 
20 e cosě via.
Newsgroup: it.comp.lang.c++
Titolo: Auto_ptr

Come si usa e cosa è auto_ptr ?????
Tnk


consideralo un puntatore normale, laddove scrivevi
	A* a;
per avere una variabile dove depositare un puntatore ad A, ora scrivi
         auto_ptr<A> a;
la classe auto_ptr definisce gli operatori * e ->, cosi' da poter
dereferenziare e accedere ad eventuali membri/metodi di a in maniera 
trasparente:
         (*a).f();
         a->g();
         a->n = 123;
se vuoi accedere direttamente al puntatore allora usi il metodo get():
         A* b = a.get();
questo e' tutto quello che riguarda la parte "ptr", niente di astronomico.
per la parte "auto" invece bisogna aggiungere che nel momento in cui 
l'oggetto di tipo auto_ptr esce dal campo di validita' il suo 
distruttore invoca la delete del puntatore in esso contenuto.
auto_ptr fornisce anche altri metodi interessanti come reset() e 
release(), ma questi te li vai a vedere in un qualche manuale.
-----[ Domenico Andreoli, aka cavok
  --[ 
http://filibusta.crema.unimi.it/~cavok/gpgkey.asc
    ---[ 3A0F 2F80 F79C 678A 8936  4FEE 0677 9033 A20E BC50

 release(), ma questi te li vai a vedere in un qualche manuale.
Hai dimenticato l'aspetto piu' importante di auto_ptr, ovvero che ogni
istanza mantiene il possesso esclusivo dell'oggetto puntato; in
pratica se fai:
auto_ptr<int> a(new int(5));
auto_ptr<int> b(a);
b prende il possesso dell'intero puntato ed a viene impostato al
puntatore nullo. Se non fosse cosi' all'uscita dallo scope corrente
sia b che a cercherebbero di invocare delete sullo stesso puntatore.
Ciao,
Nicola

Puo essere cambiato o rimane sempre lo stesso oggetto puntato?
Tnk 1000 cmq

 Puo essere cambiato o rimane sempre lo stesso oggetto puntato?
Lo cambi ad esempio cosi':
auto_ptr<int> i(new int(5));
i.reset(new int(8));
auto_ptr<int> j(new int(4));
j = i;
Ciao,
Nicola

 sia b che a cercherebbero di invocare delete sullo stesso puntatore.
 >
bello quest'uso, non lo conoscevo nemmeno io :)

Newsgroup: it.comp.lang.c++
Titolo: Algoritmi

Qualcuno saprebbe dirmi dove trovare qualche semplice informazione su
algoritmi su come criptare files?
Luca Carlon

Luca Carlon wrote:

secondo me se cerchi solo "semplici informazioni" vai su google e digita 
"algoritmi crittografia"... come minimo ti ritorna qualche migliaio di 
siti...
Pinolo

Newsgroup: it.comp.lang.c++
Titolo: c++ e internet

voglio scrivere un piccolo programma che si connette ad un sito fisso che io
inserisco e mi scarica una pagina che poi io modificherò. Che librerie e
comandi si usano per far comunicare c++ e internet? (Piattaforma Windows)

Non c'entra niente con il C++ standard di cui si parla in questo gruppo.
Comunque più o meno direttamente dovrai utilizzare i socket (Winsock per
Windows).
Nei gruppi specializzati, dove avresti dovuto postare la domanda, come
it.comp.programmare.win32 sapranno indicarti al meglio, dato che
programmarsi tutto da zero con i socket, per fare quello che vuoi, non è
proprio così semplice.

Newsgroup: it.comp.lang.c++
Titolo: Libro di Stroustrup

Salve,
sapete se l'edizione speciale è stata tradotta in italiano, oppure abbiamo
solo la 3ª?
Grazie
--
Luigi
http://web.tiscali.it/luigi_web
byte...@hotmail.com
ICQ 46240443

solo la 3ª?
Ma l'edizione speciale e quella normale non sono praticamente =?
-- 
Marco Barisione (ICQ 84277092)

 Ma l'edizione speciale e quella normale non sono praticamente =?
Secondo Stroustrup a partire da una certa ristampa della 3 ed. si. Non
ricordo quale, pero', e bisognerebbe sapere se l'edizione italiana ha
incorporato le modifiche intercorse con le varie ristampe.
In ogni caso credo che tutto il contenuto aggiuntivo della special
edition sia disponibile sul sito di B.S.
Ciao,
Nicola

 edition sia disponibile sul sito di B.S.
La differenza principale e' che la special edition ha ben 2 segnalibri, ed 
e' rilegata :-))
-- 
- Dado : Extreme Snowboarder
*-> I believe I can fly, I believe I can touch the sky <-*
Newsgroup: it.comp.lang.c++
Titolo: Add-in per Visual Studio

Qualcuno può indicarmi qualche sito dove posso reperire eventuali Add in per
Visual Studio che potrebbero essere utili?
Ne ho trovato uno UTILISSIMO su 
www.codeguru.com
 per visualizzare stringhe
molto lunghe..
Grazie

Ciao,
Questo newsgroup si occupa del linguaggio C++ in quanto tale, e non di
aspetti specifici di particolari implementazioni. Per questo non e' il
posto piu' adatto per porre domande specifiche come la tua.
Potresti avere piu' fortuna su uno dei seguenti gruppi:
Per Win32 (95, 98, NT): it.comp.programmare.win32
Per Dos/Win 3.x: it.comp.os.dos
Per Linux:      it.comp.os.linux.development
Per C++Builder: i gruppi borland.public.cppbuilder.*, disponibili sul
                server 
newsgroups.borland.com
 (prevalentemente in 
                inglese, ma si puo' postare anche in italiano)
Grazie,
Nicola Musatti
Newsgroup: it.comp.lang.c++
Titolo: interfacciarsi all'USB

Cortesemente, qualcuno di voi sa fornirmi qualche indicazione circa la
programmazione in c dell'USB sotto windows?
Grazie in anticipo,
Roby.
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

programmazione in c dell'USB sotto windows?
Il "++" del nome del ng secondo te per cosa sta?
Comunque sei OT (il ng giusto penso sia it.comp.programmare.win32 o al
massimo it.comp.programmare) ma cerca con google nei vecchi post.
-- 
Marco Barisione (ICQ 84277092)

Newsgroup: it.comp.lang.c++
Titolo: Find server su LAN

Salve,
ho fatto una chat per lan in c++ composta da un client ed un server.
Il server può ricevere fino a 30 connessioni.
Il problema e che il server non risiede su un pc ma su diversi pc.
Vorrei che il client facesse una scansione della rete e trovasse il server
attivo...
Il problema e che facendo ciò impiego un sacco di tempo.. perchè i pc il lan
ne sono molti.
Mi sapreste dare qualche dritta per fare ciò?
Ho visto giochi in lan che trovano subito il loro server attivo.. come
fanno?
Grazie
xoooox
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

Fai in modo che un server attivo comunichi la sua posizione (ip address,
port) all'interno della lan in multicast.
Nel momento in cui un client si vuole connettere si mette in ascolto
sull'indirizzo di multicast fino al quando non riceve il pacchetto che gli
dira' a quale host connettersi.
da tenere presenti 3 cose:
1) il multicast fuori della tua lan sara' molto difficile che vada
2) ci potrebbero essere evidenti problemi di sicurezza circa lo stabilire la
reale identita' del server ma ci sta che non te ne freghi niente
3) il server dovrebbe mandare messaggi sul canale di multicast ad intervalli
regolari (5-10 sec) per garantire prima di tutto che non ingolfi la rete di
pacchetti per lo piu' inutili e per seconda cosa che se un client, dopo un
certo lasso di tempo (2 o 3 volte l'intervallo), non ha ricevuto un
pacchetto portante la posizione del server e' piu' o meno sicuro che non ci
sono server attivi. Alternativamante potrebbe provare a mandare un messaggio
di richiesta di posizionamento sul canale di multicast e vedere se un server
gli risponde.
ciao e buon lavoro,
Nids

xoo...@libero.it
 (xoooox) wrote in
news:213Z45Z112Z14Y...@usenet.libero.it
: 

Questo e' quello che faccio io:
- Il server ascolta su 2 porte contemporaneamente: la porta XXX e la 
  porta XXX+1. La socket sulla porta XXX e' di tipo DATAGRAM.
- Un cliente che vuole collegarsi procede cosi':
  - Invia un pacchetto DATAGRAM in broadcast sulla porta XXX e attende  
    una risposta dal server. Insieme al pacchetto di risposta viene 
    ovviamente anche l'IP del server che ha risposto.
  - Una volta avuto l'IP del server, il cliente si connette al server 
    usando l'IP appena ricevuto e la porta XXX+1
Newsgroup: it.comp.lang.c++
Titolo: Aiuto per un principiante del c++

Posseggo il Boland c++ Builder.
Qualquno potrebbe dirmi le operazioni che
occorrono per creare una applicazione con estenzione exe.
Un grazie infinito.
Pietro Mento  
0000...@yescard.it

Un grazie infinito.
Posseggo un boing 747,
Qualquno potrebbe dirmi le operazioni che
occorrono per fare un volo intercontinentale ?
;-)

...


Errore di sbaglio fu!


please remove NOSPAM from email address to write me.
/-------------------------------------------------------\
| DataDuck 5.1  Configurable DataBase and Plug-in Win95 | 
| also for Windows 3.1 and NT. Aim your Web browser at  | 
| 
http://www.prog.arch.unige.it/~aoddera/Homeao.htm
     | 
| to get your own copy!                                 | 
\-------------------------------------------------------/

occorrono per creare una applicazione con estenzione exe.
Se dal menu' File scegli la voce "New application" sei pronto per creare
una applicazione con estensione .exe.
Nel form che si apre devi inserirci i vari componenti, aggiungi del codice
qua e la'
e poi compili il tutto. Se non hai fatto errori sei pronto per il linking,
dopodiche
ti ritrovi nella cartella in cui hai salvato il progetto il tuo bel file
.exe da eseguire.
--
Byez.
Stefano Tempesta
s.tem...@usa.net
http://tempesta.freeweb.org
--------------------------------
<<< Think indipendent, cos' indipendent you can't be >>>
Newsgroup: it.comp.lang.c++
Titolo: funzioni inline

ciao a tutti, sto studiando il c++ sul libro del Lippman le funzioni
inline e una cosa non mi e' chiara:
le funzioni inline, venendo espanse nel punto di chiamata durante la
compilazione, rendono piu' veloce l'eseguibile ma forse (credo di aver
capito) lo rendono di dimensioni maggiori in termini di bytes.
ho capito anche perche' e' conveniente dichiararle e definirle
all'interno dello stesso file di intestazione...
quello che non ho capito e' perche' hanno molta importanza, come dice il
lippman, nel mascheramento dell'informazione???
ciao e grazie in anticipo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 lippman, nel mascheramento dell'informazione???
Beh, io non so neanche cosa sia il mascheramento dell'informazione;se
c'entra con le classi ho una ipotesi: vuol dire incapsulamento, e allora
dato che si usa fare:
private:
int priv_m;
public:
int getM();
void setM(int m);
allora è conveniente che getM e setM siano inline, no? Se parla di
qualcos'altro, spiegalo. Ciao
--
Paolo Giarrusso
Per rispondere togliere solo "TOGLIMI" dall'indirizzo, non _spam.

qualcos'altro, spiegalo. Ciao
si, credo il punto sia quello. anche se non ho il lippman.

 >c'entra con le classi ho una ipotesi: vuol dire incapsulamento, e allora
Mi pare di capire che comunque è così. Ciao


Newsgroup: it.comp.lang.c++
Titolo: getch() e gli altri caratteri

Salve,
vorrei sapere come faccio a capire quando l'utente preme le freccette
direzionali;
uso borland turbo c++ 3.0
grazie

 ha scritto nel messaggio
news:iLbGL99...@news-02.uni.net...

su = 72
destra= 75
sinistra=77
giu=80
o cmq invertiti, ma dovrebbero essere giusti cosi
K

 wrote in message iLbGL99...@news-02.uni.net...

Per controllare ke tasto viene premuto si usa getch() ovvero:
char a;
a=getch();
A questo punto devo controllare il valore contenuto in a:
if(int(a)==77) cout<<"Destra";
in questo caso ho usato 77 ovvero il codice ASCII del tasto destro.Gli altri
sono:
SINISTRA            75
GIU                       80
SU                         72
CANC                   83
FINE                     79
PAG UP                73
PAG DOWN         81
INVIO                   13
Newsgroup: it.comp.lang.c++
Titolo: include condizionali

Ciao, mi è venuto un dubbio nell'utilizzo di una direttiva del
preprocessore:
ovvero se ho un file Time.h (interfaccia) poi un file Time.cpp
(implementazione)
e poi un file che il client (Test.cpp) allora se creo il file
Time.h con:
#ifndef TIME_H_
#define TIME_H_
..
..
#endif
e poi includo lo stesso in Time.cpp e Test.cpp lo stesso non dovrebbe
essere incluso più
volte poichè la prima volta è stato incluso in Time.cpp e TIME_H_
risulta essere stata
definita sicchè poi in Test.cpp quando si incontra di nuovo  #include
"Time.h" lo stesso
non dovrebbe essre incluso ... ma non credo sia così perchè se lo
tolgo ovviamente
non sono più visibili gli identificatori ... quindi credo che il fatto
di non includere nuovamente
un file .h si riferisca alla non inclusione ricorsiva ... poichè ogni
fle .cpp è in realtà una
singola unità di compilazione che ha bisogno del suo file .h 
Giusto?


Se il progetto ha n file cpp f_1.cpp, f_2.cpp, ..., f_n.cpp, la "costruzione"
dell'intero progetto consiste solitamente in almeno
   F = {f_1, f_2, ..., f_n}
   // Preprocessing
   for each f in F
     preprocess f+'.cpp' -> f+'.pre'
   // Compilation
   for each f in F
     compile f+'.pre' -> f+'.obj'
   // Linking
   G = {f_1+'.obj, f_2+'.obj', ..., f_n+'.obj}
   link every g in G -> ExeFile
Le #-direttive vengono gestite nella fase di preprocessing.
Kiuhnm

 Giusto?
Si... dov'e' il dubbio? =)
--*PaN!*

> Le #-direttive vengono gestite nella fase di preprocessing.
ok ma la mia domanda era:
se ho es:
Time.cpp
#include "Time.h"
...
Test1.cpp
#include "Time.h"
...
poi quando avvio il compilatore allora il preprocessore elabora
Time.cpp
include Time.h (dove definisco TIME_H) poi elabora Test1.cpp e cosa
fa lo include Time.h ??? qui è il mio dubbio...


La compilazione di file diversi avviene in modo totalmente
indipendente. All'inizio della compilazione di Test1.cpp TIME_H non e'
definita.
Ciao,
Nicola

 definita.
perfetto, quindi lo scopo degli include condizionali serve solo per
evitare include ricorsivi nell'ambito
della stessa unità di compilazioe; ovvero se io ho in Test1.cpp
#include "Date.h" // che include Time.h
#include "Time.h"
...
allora qui sarà incluso una sola volta grazie alla definizione del
simbolo TIME_H incontrato nella prima inclusione di Date.h
Bye

 della stessa unità di compilazioe; ovvero se io ho in Test1.cpp
A essere precisi, non esistono include condizionali e, inoltre, uno 
stesso file potrebbe essere incluso più volte anche se non ricorsivamente:
A <- B <- D
   <- C <- D
Senza condizioni, A includerebbe D due volte, ma non ricorsivamente.
Kiuhnm

 Senza condizioni, A includerebbe D due volte, ma non ricorsivamente.
certo ma solo se includendo più volte lo stesso .h in un .cpp non
si incorrre in un errore di compilazione che riguarda un'eventuale
ridefinizione di struct/class/prototipazione metodi ecc. e cmq
non ne vedo il motivo logico!

 non ne vedo il motivo logico!
Non reincludendo lo stesso file si risparmia anche tempo.
Kiuhnm
Newsgroup: it.comp.lang.c++
Titolo: Consiglio

Volevo da voi geni del C++ un consiglio su quale libro comprare che tratti
bene ( penso sia quindi preferibile un libro in lingua inglese) le MFC.
Grazie a tutti
Federico - The matrix

 wrote in message 7lj8dk$bpf$1...@nslave1.tin.it...


Ciao,
    ormai è parecchio che non seguo + MFC ma fino ad un po' di tempo fa la
bibbia a riguardo era "Programming Windows 95 with MFC" di Jeff Prosise
della Microsoft Press.
A presto :-)
Marco Abis
http://www.programmazione.it
ab...@programmazione.it


110/120 mila lire.
No, il libro di Jeff e' edito da Microsoft Press. Attenti a comprare la
nuova edizione tra l'altro, che suppongo sara' anche l'ultima.
Davide Marcato.
----------------------------------------------------
| -- Freelance International Consultant
| -- Win32/MFC/COM Development & Training
| -- Technical Writer & Speaker
----------------------------------------------------
| -- Email: 
mar...@programmers.net
| -- Web: 
http://www.DavideMarcato.com
----------------------------------------------------
Newsgroup: it.comp.lang.c++
Titolo: files.LIB

Per provare alcuni esempi di Visual C++ 6
ho bisogno delle seguenti librerie che non riesco a trovare:
mfc42u.Lib
mfc42ud.Lib
uafxcw.Lib
uafxcwd.Lib
Fer favore, se qualcuno le ha,
e volesse farmele avere,
potrebbe inviarmele via E-Mail
Infinitamente grazie

 a écrit dans le message news:
6SoD8.47443$US3.1...@twister1.libero.it...

Ognuna di queste (mfc42u.Lib e mfc42ud.Lib) e' di circa 2 megabytes.
Per non parlare di queste (uafxcw.Lib e uafxcwd.Lib) che sono ognuna di
circa 9 mega
Io le ho trovate qua:
C:\Program Files\Microsoft Visual Studio\VC98\MFC\Lib
Sei sicuro di non averle?
Per posta di sicuro non e' fattibile, ti mando il mio elefante viaggiatore
semmai...
Maurus

 a écrit dans le message news:
abohf6$k0cm2$1...@ID-125555.news.dfncis.de...

Visto che oggi sono buono ti do' una dritta decisiva che ho trovato su
codeguru:
"just switch to a none unicode build
selection. if you need unicode, you
have to reinstall the unicode runtime
and shared libraries. they are hidden
somewhere at the visualc++ install
options and unfortunatly switched off
by default.... "
Questo per risolvere il problema delle due lib con la u e ud finale che sta
per unicode e unicode debugger.
Analogamente per le altre 2 librerie:
"When there is a uafxcw.lib missing message, you have to install the unicode
library by your compiler installation disk".
In parole povere, in entrambi i casi risolvi tutto, rimettendo il cd di
Visual Studio per installare le librerie unicode che per default non sono
state installate.
Maurus

 > Maurus

Parlatene via mail o su it.comp.programmare.win32 .
Ciao,
Nicola

 Antonio
Antonio,
purtroppo ho la sensazione che i tuoi esempi possano funzionionare in
ambiente NT o 2000 ma non  in Win95 o 98.
Per non disturbare ulteriormente gli altri, poiche' qua siamo OT puoi
scrivere un messaggio che riassuma il tuo problema su
it.comp.programmare.win32, come ci ha suggerito il buon Nicola Musatti.
Ti copio comunque cio' che ho trovato nel testo di Richter, sulla
programmazione Windows, che confermerebbe il mio sospetto:
"Although it is true that most implementations of Unicode functions do
nothing in Windows 98, a few Unicode functions do have useful
implementations. These functions are
      a.. EnumResourceLanguagesW
     b.. GetTextExtentPoint32W
      c.. EnumResourceNamesW
     d.. GetTextExtentPointW
      e.. EnumResourceTypesW
     f.. lstrlenW
      g.. ExtTextOutW
     h.. MessageBoxExW
      i.. FindResourceW
     j.. MessageBoxW
      k.. FindResourceExW
     l.. TextOutW
      m.. GetCharWidthW
     n.. WideCharToMultiByte
      o.. GetCommandLineW
     p.. MultiByteToWideChar
Unfortunately, many of these functions exhibit all kinds of bugs in Windows
98. Some of them don't work with certain fonts, some of them corrupt the
heap, some of them crash printer drivers, and so on. You're going to have to
do a lot of testing if you use these. Even then you might not be able to fix
the problems-you'll just have to tell your users about them".
 (Jeffrey Richter "Programming applications for Microsoft Windows")
Maurus
Newsgroup: it.comp.lang.c++
Titolo: Problema overloading alcuni operatori

> mi ha risposto sbrish solo che non ho capito cosa voleva dire, in pratica
ha riscritto il codice che avevo postato io potreste dargli un'occhiata?
io avevo imprementato queste funzioni:
friend ostream &operator<<(ostream &out, const Complex &c);
friend istream &operator>>(istream &in, Complex &c);
Che nel file .h ho definito friende ed ho poi implementato come funzioni
esterne alla classe nel file in cui è incluso il main, ora mi vengono dati
vari errori, se inserisco le funzioni che friende nel file.h mi viene data
una serie infinita di errori che non sto qui a scrivere sarebbero troppo
lunghi, allora ho provato a includere nel file .h <iostream>e gli errori si
riducono di molto e sono solo questi:

 ha scritto nel messaggio
news:lMeFb.29063$0w.14...@news2.tin.it...

Compilazione in corso...
Complex.cpp
Complesso.cpp
Generazione del codice in corso...
Collegamento in corso...
Complesso.obj : error LNK2019: riferimento al simbolo esterno "class
std::basic_ostream<char,struct std::char_traits<char> > & __cdecl
operator<<(class std::basic_ostream<char,struct std::char_traits<char> >
&,class Complex const &)"
(??6@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@std@@AAV01@ABVComplex@@@Z)
non risolto nella funzione _main
Debug/Complesso.exe : fatal error LNK1120: 1 esterni non risolti
Se le funzioni non le dichiaro più friende e i portotipo li inserisco solo
nel file con il main gli errorri sono sempre quelli sopra riportati,
l'implementazione di questi operatori è la seguente:
ostream &operator<<(ostream &out, Complex &c){
out<<c.getRe()<<", "<<c.getIm();
return out;
}
istream &operator>>(istream &in, Complex &c){
double a, b;
in>>a;
in>>b;
c.setRe(a);
c.setIm(b);
return in;
}
Come posso risolvere????
Grazie.
Newsgroup: it.comp.lang.c++
Titolo: socket in Windows

Vorrei utilizzare le socket di windows ma di riferimento ho
solo le specifiche di quelle per unix.
qualcuno sa dirmi da dove cominciare? guide, help?
grazie!
-- 
---
Federico Vigna
www.federicovigna.it

 qualcuno sa dirmi da dove cominciare? guide, help?
Mah, San Google consiglia:
http://www.hal-pc.org/~johnnie2/winsock.html
Io l'ho trovato molto pratico quando ho ripreso in mano i socket di windows
dopo tipo due anni che non ci lavoravo... YMMV.
Ciaotutti,
*
-- 
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?


Per inciso: il codice e' tutto in C... Windows avrebbe delle classi socket
nelle MFC, pero' non sono standard e fanno anche abbastanza schifo
(perlomeno, io ho trovato piu' semplice lavorare direttamente con le
funzioni).
Ciaotutti,
* - che non sa dove mettere il f/u


 funzioni).
Non che le socket di windows siano standard, almeno intese nel senso di 
questo newsgroup... :-)
-- 
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

Newsgroup: it.comp.lang.c++
Titolo: [SDL] web browser

Qualcono sa dov'è possibile reperire del codice open-source in C o C++
che faccia da Web Browser ?
Se possibile averlo per le librerie SDL è meglio, altrimenti me lo
adatto io.
Purtroppo non sono riuscito a trovarlo in rete, spero di aver
sbagliato io a cercare.
Grazie e ciao.

www.mozilla.org
?
Ciao,
Nicola

 adatto io.
Ci sono almeno un paio di port in corso per rimuovere le dipendenze da 
QT di KHTML, se cerchi con google li trovi.
In ogni caso non e` un lavoro da poco quello che vuoi fare!
Ciao,
  Gabry

"Marcello" <marc...@unlockGate.net> ha scritto nel messaggio
news:ba12d50f.05022...@posting.google.com...

Hai provato a cercare sul sito di SDL ?
;-)
dal sito 
www.libsdl.org
  , segui il link libraries e cerchi...
e salta fuori questo link:
http://jcatki.no-ip.org/SDL_websrv/
:-)
-- 
Ciao!
Newsgroup: it.comp.lang.c++
Titolo: mmx K6 & c++?

Secondo voi esiste un modo coerente e corretto per implementere le
instruzioni SIMD(MMX e 3Dnow! per capirci) in c++?
Usare l'assembler non mi sembra molto bello ma altri modelli di
programmazione proprio non mi vengono in mente.
Giulia 
-- 
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: 2.6.3i
mQBtAzTy/2AAAAEDAONDe9aKLgg9VnfWMV9VsTANTLlMMpRIH6okPVvJiNnbwoYd
VJV9/gNw/dmNGMXJg1izxKaoQWyZn/3mzOnvK8mvk8NL/KfBKd85sttzIOYjQiHV
rT3SPk4g0F+R8yHz3QAFE7QjZ2l1bGlhPGZhcjU4OTNAaXBlcmJvbGUuYm9sb2du
YS5pdD6JAHUDBRA08v9hINBfkfMh890BAXLjAv9SHgyJyxYpLFVFV5IPZbqwQ8fQ
gx+3LacWDFwrCdpdZOQtIEba4Cc1qWDY3AzYHBBBKhLD2OVnDyJDGeW+fnfZEOXd
kb2JvytEleDAw7pP/zsH8xj6WwbWu6gzjXPjk5s=
=W/hV
-----END PGP PUBLIC KEY BLOCK-----

 programmazione proprio non mi vengono in mente.
Il problema di fondo č che nessun compilatore in commercio e'
in grado di generare codice con istruzioni SIMD, e, neanche
il compilatore di Intel e' in grado di generare automaticamente
codice per MMX.
IMHO, credo convenga utilizzare l'assembly inline, sia per ragioni
di efficienza che di portabilita', dato che esiste sempre la
compilazione condizionale (per distinguere NT da altro basta
un #ifdef _X86).
Un'altro approccio utilizzato e' quello di definire un set di
macro per richiamare questa o quella specifica istruzione, ma
anche qui il problema di portabilita' resta invariato, e
probabilmente il codice sara' anche un po' piu' lento, a causa
delle ridondanze nel caricare/scaricare/salvare/ripristinare
i registri che molti compilatori creano.
HTH,
Aldo.

 Il problema di fondo è che nessun compilatore in commercio e'


 programmazione proprio non mi vengono in mente.

Newsgroup: it.comp.lang.c++
Titolo: Problema allocazione dinamica

Salve,
ho un singleton che mi fa da gestore di mesh in un piccolo motore 
grafico, e questo gestore mi crea una problema: ha un metodo
LoadMesh( DXMesh * p, const char * filename )
che carica un file in memoria, lo analizza e crea di conseguenza 
l'oggetto necessario utilizzando il puntatore passato in ingresso.
All'interno del metodo tutto funziona, ma una volta tornato al chiamante 
il puntatore risulta vuoto ( ci fallisce l'asserzione ).
Non mi tornano i conti: se passo il puntatore apposta per ottenere 
l'oggetto di ritorno, perche' lo perdo ???
Grazie

 l'oggetto di ritorno, perche' lo perdo ???
Per ottenere l'effetto che desideri devi dichiarare l'argomento come
reference a puntatore:
    DXMesh * & p
 
In C avresti usato un puntatore a puntatore. Diversamente, la funzione
riceve soltanto una *copia* del puntatore e non è, per ovvie ragioni, in
grado di alterare il valore del puntatore originario.
Max

 il puntatore risulta vuoto ( ci fallisce l'asserzione ).
Oltre a quanto scritto giustamente da Max M., aggiungerei che forse e' 
piu' semplice se usi un prototipo del tipo:
DXMesh * LoadMesh( const char * filename );
che in caso di errore ritorna NULL, altrimenti ritorna un puntatore 
all'oggetto mesh creato.
<OT DirectX>
Comunque, se usi DirectX, come mi pare di capire, il discorso dei doppi-
puntatori (**) e' molto frequente (dato che i metodi di tale API usano 
un HRESULT come valore di ritorno).
<OT>
Ciao,
Dan

 Dan
E' esattamente come ho fatto, ed a dimostrazione di cio' che dici delle 
DX molti oggetti sono alias di puntatori a qualcosa, tipo
LPDIRECT3DDEVICE9
che e' un puntatore a IDirect3DDevice9 ( se non sbaglio ) ed infatti 
quando la si usa ( ad esempio per creare il device ) - nell'ipotesi di 
aver dichiarato una variabile dv del tipo di cui sopra - si utilizza
( "D3D" ) -> CreateDevice( & dv );
e quindi esattamente una reference a puntatore...
Ci potevo fare anche caso...grazie tante !!
Newsgroup: it.comp.lang.c++
Titolo: Access 97 Database in Borland C++ 3.0

L'unico modo che ho trovato per aprire un database di access 97 con il c è
quello di specificare il file nell'ODBC poi nel BDE con l'SQL explorer ma
ciò causa la richiesta ad ogni avvio dell'applicazione dell'username e di
una password, ciò accade anche se tali valori sono nulli, avete
suggerimenti?
--
executorddd
ICQ 34714481

Per aprire Access con il builder 3 devi usare un componente TDatabase e
impostare l'alias ad un valore che punti a MSACCESS. Poi assegni a
DatabaseName il nome che vuoi dare e questo nome te lo ritrovi nell'elenco
degli alias da assegnare a DatabaseName delle TTable o delle TQuery. Per non
visualizzare la finestra di richiesta password, imposta la property
LoginPrompt (m sembra...) a false sul componente TDatabase.
Ciao
--
Stefano Tempesta
PC Service Software
http://www.tempesta.cc.st
ste...@pcs-online.it

Newsgroup: it.comp.lang.c++
Titolo: Un file per andare in 800*600

Qualcuno ha un semplice file .CPP o .H per andare almeno in 640*480 da dos ?
(fuzionante con TURBO C++)
Grazie !! Il mio e-mail è 
nig...@libero.it

Qualcuno ha un semplice file .CPP o .H per andare almeno in 640*480 da dos ?
_AX=0x33;  // 800x600x256 SVGA
asm int 0x10;
tutto qua.
Ciao 
Cugy

Newsgroup: it.comp.lang.c++
Titolo: DLL per Borland C++, Visual C++ e CigWin !!!

Salve,
Come posso costruire una DLL e un .LIB che sia universale per tutti i
sopracitati compilatori ??
Grazie, Ciao Lvca.

Non puoi perche' non c'e' la compatibilita'
binaria.
Ciao.
--
Francesco Garelli
Dipartimento di Elettronica
Universita' di Ancona
Newsgroup: it.comp.lang.c++
Titolo: gestione mesh di punti

salve a tutto il NG
Uso da poco il c++ (conoscevo il c a livello di informatica I a
ingegneria), e adesso avrei l'esigenza di costruire un programma serio
che gestisca mesh triangolari. (Al momento non mi serve che le
visualizzi)
Ho scritto una class point e una classe triangle senza troppi
problemi, ma non riesco a trovare un modo per gestire l'intera mesh.
Considerando che devo leggere le coordinate dei punti e l'elenco
ordianto dei triangoli da file, che struttura mi consigliate?
grazie a tutti 
-- 
Sukutestriz
::SuperRobotMuseum::
http://digilander.libero.it/SuperRobotMuseum/SRM.html


Ciao.
Hai detto che non hai (per ora) necessità di visualizzare la mesh, in 
pratica tu devi semplicemente leggere i dati che rappresentano la mesh.
Ma tale mesh la generi con qualche software ??? Esporti un modello da 
Maya come .obj ?? Oppure un .3ds ?? Se non hai particolari necessità 
allora non vedo un criterio per scegliere...
Es.: se la tua mesh e' fatta di poligoni puoi creare la classe poligono 
e rappresenti tutto come un vettore di poligoni ( i cui vertici magari 
sono indici di un vettore contenente tutti i punti della mesh), oppure 
triangoli se sono solo triangoli....
Bisognerebbe sapere la natura delle informazioni che hai.
Se poi devi decidere te.....lavora di fantasia (ti ripeto sempre se non 
devi fartene niente :) )
j0k3r

j0k3r
ciao j0k3r
In effetti mi rendo conto di essere stato troppo vago:
io dovrei costruire un programma che calcoli degli integrali in forma
numerica su superfici arbitrarie nello spazio.
In pratica mi serve una mesh di triangoli da cui estrapolare le
coordinate dei baricentri delle singole facce e dei centri degli
spigoli non periferici.
In realta' non avrei alcuna limitazione nel modo di fornire l'input
geometrico al solver vero e proprio, pero' credo sia opportuno usare
un modello standard, anche per creare delle forme decenti che in
seguito sarebbe carino visualizzare.
Come tu consigli per ora ho optato per un .obj dato che utilizzo
Softimage/XSI come software di modellazione.
ho creato una class mesh cosi':
typedef point point_vector[MAXPOINT];
typedef int coord3[3];
typedef coord3 coord_vector[MAXTRIANGLE];
class mesh{
	point_vector points;
	coord_vector faces;
	int num_points,num_faces;
etc...
come suggerisci tu ho creato un vettore di punti (terne di float)
e un vettore di coordinate "logiche" dei punti che identificano un
triangolo con tre punti (terne di int)
pensi che possa funzionare?
Io ho il timore che sia troppo macchinosa per estrarre i vari dati che
mi servono
grazie per l'attenzione ^_^


 mi servono
Credo che ti convenga inizialmente sempre scrivere un sistemza minimale, 
al quale poi aggiungi, volta per volta, le feature avanzate oppure 
apporti correzioni di stile / ottimizzazioni in genere.
Ciao

apporti correzioni di stile / ottimizzazioni in genere.
Grazie di tutti i consigli, li terro' presenti ^_^
ciao

Newsgroup: it.comp.lang.c++
Titolo: DDK, dove lo trovo ?

mi servirebbe il DDK della microsoft (quello per scrivere VXD), ho il
VC++ 5.0 ma non l'ho trovato. e` possibile scaricarlo da internet ?
quanti Mb ??
Buon 1998
[ranger, email: 
ran...@queen.it
]

quanti Mb ??
Lo trovi abbonandoti a MSDN Professional
~~~~~~~~~~~~~~~~~~~ Stefano Mazzotti ~~~~~~~~~~~~~~~~~~~~
from Faenza, Ravenna, Italy
Email: 
smaz...@racine.ra.it
 | 
smaz...@geocities.com
Web:   
http://www.geocities.com/SiliconValley/Lakes/2799
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Newsgroup: it.comp.lang.c++
Titolo: VI PREGO, un sorgente c++.

Possiedo Borland turbo c++ per win 3.1,  non conosco il c++ ma solo alcune
cose del  C .
Per questo avrei un gran bisogno di  un sorgente (compatibile con il mio
compilatore) che mi permetta di inserirci dentro un mio programmino in C che
manipola testi aprendo file ecc, mi serve che sia in grado di funzionare
senza utilizare tutte le risorse, quelli che costruisco in C mi bloccano
tutto finche non terminano.
Mi servirebbe anche un sorgente c++ come esempio, che  costruisca un grafico
da una serie di numeri.
Non so se chiesto una cosa difficile o una stupidata sarò comunque
infinitamente grato a chi me li fornirà.
grazie.
fu...@endoxa.it
http://www.angelfire.com/fl/tradefib/index.html



da una serie di numeri.
L'esempio sotto riportato e' in C. Adattalo alle tue esigenze
// BARCHART Example Program
#include <stdio.h>
#include <stdlib.h>
#include <float.h>
#include <graphics.h>
#include <math.h>
#include <conio.h>
#define MAX        50
#define ARRAYMAX   10
void makegraph(float p[]);
void main(void)
{
  int i, scores[ARRAYMAX];
  float percents[ARRAYMAX];
  for (i = 0; i < ARRAYMAX; i++)
 {
 printf("\nEnter score between 0 and %d:  ", MAX);
 scanf("%d", &scores[i]);
 }
  for (i = 0; i < ARRAYMAX; i++)
 percents[i] = ((float) scores[i]) / MAX;
  printf("\n\n\n\tSCORE\tPERCENT");
  for (i = 0; i < ARRAYMAX; i++)
 printf("\n%d. \t%d\t%3.0f", i + 1, scores[i], (percents[i] * 100));
  getch();
  makegraph(percents);
}
void makegraph(float p[])
{
  int g_driver, g_mode;
  int i, left, top, wide, bottom, deep;
  detectgraph(&g_driver, &g_mode);
  initgraph(&g_driver, &g_mode, "");
  wide = (int)((getmaxx()) / ((ARRAYMAX * 2 ) + 1));
  bottom = getmaxy() - 20;
  deep = (int) (wide / 4);
  left = wide;
  for (i = 0; i < ARRAYMAX; i++)
 {
 top = (bottom) - ((int)(p[i] * 300));
 bar3d(left, top, (left + wide), bottom, deep, 1);
 left += (wide * 2);
 }
  getch();
  closegraph();
  return;
}
--
Byez.
Stefano Tempesta
s.tem...@usa.net
http://tempesta.freeweb.org
--------------------------------
(-: To "shut down" your system, type "WIN" :-)
(-: Windows VirusScan 1.0 - "Windows found: Remove it? (Y/N)" :-)
Newsgroup: it.comp.lang.c++
Titolo: Connessione db

Salve a tutti, sapreste descrivermi come posso conettermi ad un DB
(Oracle || Gupta || Access) tramite C++?
Vorrei avere informazioni riguardo le varie possibilità, al fine di
scegliere la migliore.
Grazie mille.

visma...@gmail.com
 ha scritto:

ODBC
Piu' o meno multipiattaforma (su Windows ce l'hai gia' installato, sul 
resto ti devi trovare una libreria apposita, es: unixODBC); poi devi 
avere il driver per il tuo database (ovviamente quello per Access c'e' 
solo per Windows).
In teoria scrivi il programma una volta per tutte e poi va bene anche se 
cambi database (in pratica c'e' da fare parecchia attenzione a non usare 
estensioni o sintassi non standard).
L'ho usato anni fa ed era un po' una pena rispetto ad altro, non so se 
sia migliorato o se usando una libreria di wrapper migliori (es. wxWidgets).
Altrimenti, per quanto ne so, ogni database fa storia a se, fornendoti 
degli strumenti appositi. L'unico che ho usato e PostgreSQL (e lo sto 
usando da poco, per cui ancora non mi pronuncio): visto che non e' tra 
quelli che hai elencato, direi di non poterti aiutare piu' di cosi'.
Secondo me siamo un po' OT: credo pero' che abbia senso chiedere qui, 
quanto meno in una fase iniziale "informativa".
  bye
	av.



Domanda troppo generica. Dipende dal sistema che usi per sviluppare.
Per esempio, se usassi il C++ Builder potresti tranquillamente usare
ADO o dbExpress.

On 29 Lug, 23:56, Andrea Laforgia
<a.lafor...@andrealaforgia.it.invalid> wrote:

Ok...come IDE io utilizzo WxDev o DevCpp o Codeblocks.
Dove posso documentarmi sulla tecnologia da usare? Avete qualche
esempio di codice?
Grazie mille!


Prova a vedere se SOCI fa al caso tuo: 
http://soci.sourceforge.net/
Io sto lavorando a tempo perso a qualcosa del genere, ma e' ben lungi
dall'essere seriamente utilizzabile. Se sei incuriosito puoi partire
da qui: 
http://wordpress.com/tag/sqlcli/
Per un'alternativa commerciale io mi sono trovato bene con SQLAPI++:
http://www.sqlapi.com/
Ciao,
Nicola

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

Potreste indicarmi un sito dove ordinare online
"C++ Linguaggio, libreria standard, principi di programmazione - terza
edizone" di Stroustrup?
Grazie

 - terza edizone" di Stroustrup?
Il primo che mi viene in mente č:
www.gorilla.it
personalmente mi sono sempre trovato bene.
--
Gerolamo

 Gerolamo
Ok grazie, io ho trovato 
internetbookshop.it
Ciao

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

Un programma mi da' segmentation fault.
Eseguendolo sotto gdb, l'errore risulta avvenire nella funzione di libreria
libc+AF8-free(): che cos'e' questa funzione? si puo' dedurre qualcosa sul bug?
Grazie,
Paolo


Probabilmente l'errore avviene mentre cerchi di deallocare qualcosa.
Con Linux / libstdc++ 2.8 / libc6,  delete e' implementata con una chiamata a
___builtin_delete che a sua volta chiama __libc_free.
Comunque con il comando 'info stack' di gdb puoi vedere chi ha chiamato la
funzione che si e' piantata.
	Mauro