mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c++
Titolo: Testo To Integer

Scusate la mia ignoranza, sto' imparando ora a programmare in Visual
C++ della Borland .Vorrei fare una domanda :
Se ho un testo in una casella di Edit come faccio a passare l'intero
corrispondente al testo in una funzione ??
perche' non mi dà        myfunc(atoi (Edit1->Text))   ?????
Grazie.

corrispondente al testo in una funzione ??
E'semplice:lo converti in intero tramite questa funzione:
int num= StrToInt(Edit1->Text);
O meglio ancora:
int num= StrToIntDef(Edit1->Text,-1);
Questa funzione assegna num=-1 nel caso che il TEdit non possa
essere convertito in intero correttamente(ad esempio,se l'edit
contiene dei caratteri alfanumerici).A questo punto con l'intero num
puoi fare tutte le operazioni che ti interessano.
Il Ghenio

perche' non mi dà        myfunc(atoi (Edit1->Text))   ?????
Ti sei accertato che Edit1->Text sia di tipo char* o abbia
un opportuno operatore di conversione?
Paolo
-----------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------

 Grazie.

perche' non mi dà        myfunc(atoi (Edit1->Text))   ?????
Perchè il valore ritornato da Edit1->Text è di tipo AnsiString.
Puoi trasformare un tipo AnsiString in un 'char *' con la funzione
membro c_str().
Quindi scrivi
myfunc((Edit1->Text).c_str());
Spero di esserti stato d'aiuto.
--
Sm3P
"Ninetta mia crepare di maggio, ci vuole tanto troppo coraggio,
 Ninetta bella dritto all'inferno, avrei preferito andarci d'inverno."

 Grazie.
Mmmmh io sviluppo con il Visual C++ e non so se è la stessa cosa
comunque....
Il tipo di testo della casella di edit è CString e quindi la funzione atoi
non riconosce il tipo, devi prima copiare la CString in un array di
carratteri e poi passare questo alla funzione atoi........
...............spero di non aver detto una cazzata :))))


wrote:
Grazie a tutti per le risposte, ora vi dico cosa ho scoperto:
Innanzitutto ho il C++Builder come mi avete fatto notare.
Data la somiglianza con il visual basic( somiglianza come interfaccia)
ho creduto che fosse iol Visual C++.+
Comunque se vi interessa la funzione per convertire un AnsiString in
intero è ToInt() ,cioè avrei dovuto fare    i = Edit1->Text.ToInt() .
Ciao.

Su Borland C++ Builder 1.0 la funzione giusta è atoi, ma comunque potresti
aver fatto un po' di confusione con i puntatori...
Ciao.
Diego Pettenò

Newsgroup: it.comp.lang.c++
Titolo: Turbo C++

Ho imparato qualche cosa di Turbo C++ e vorrei sapere se è disponibile
sul mercato un libro riguardante la programmazione di Turbo C++ in
ambiente Windows 95 o anche programmazione per Internet.
Grazie!!!
Ciao da Lorenzo
Se possibile rispondete a:  
ini...@mv.ats.it
http://userspace.ats.it/free/inizrof/

...

Newsgroup: it.comp.lang.c++
Titolo: Aggiornare

Vi spiego il mio problema:
Usando Mathematica posso fare dei programmini che mi scrivono ciclicamente 
su un file un numero
(uno solo); ad esempio potrei fare un programmino che mi trova numeri primi: 
questo programmino funzionerebbe così:
trova il numero 2 e poi me lo scrive sul file primo.txt, poi trova il numero 
3 e
mi riscrive il file col numero 3, poi mi trova 5 ecc... Quindi, se vado ad 
aprire il
file primo.txt in un qualunque momento, visualizzo il numero primo più 
grande
che il mio programmino mi ha trovato.
Ma supponiamo che *mentre* il file primo.txt è
aperto e mi visualizza (ad esempio) il numero 3, il mio programmino trova il 
numero 5
e quindi Mathematica scrive 5 sul file primo.txt ; dal momento che il file 
primo.txt
è aperto (perché, ad esempio, io lo sto visualizzando col blocco note) 
quello che vedrò scritto sul file primo.txt sarà 3, anche se il mio 
programmino ha trovato il numero 5.
Ora la mia domanda è: conoscete qualche modo per far si che io possa (senza 
fare niente manualmente) vedere sempre e solo il numero primo più grande che 
il mio programmino mi ha trovato?
Un idea che ho avuto e far si che mi si apra una finestra e che in questa 
finestra, che dovrà rimanere sempre aperta, venga sempre visualizzato il 
contenuto aggiornato del file primo.txt (ossia venga sempre visualizzato il 
numero primo più grande che Mathematica mi ha trovato); un possibile modo 
per concretizzare ciò potrebbe essere creare un file primo.bat con queste 
istruzioni
:start
more primo.txt
echo off
goto start
ma i difetti di questo metodo sono:
1) uso eccessivo della cpu, che invece dev'essere impegnata principalmente 
per trovare numeri primi
2) l'output non cambia solo quando è cambiato il file primo.txt, ma cambia 
in continuazione
Magari un modo per migliorare questo metodo è far fare il ciclo che ho 
scritto sopra solo ogni tot di tempo, ma non conosco i comandi per fare 
questo... voi li conoscete?
Grazie e ciao 

 Magari un modo per migliorare questo metodo č far fare il ciclo che ho 

Newsgroup: it.comp.lang.c++
Titolo: Compilazione separata

Vi chiedo un aiuto, se possibile.
Utilizzo una Mandrake 9.2 con Kdev 2.1.
Sto creando un software che utilizza librerie di un altro, gia'
pronto. Includo gli header nel mio software e credono vengano
ritrovati semplicemente copiandoli nella directory del progetto
(infatti se passo parametri scorretti alle funzioni mi segnala un
errore). Le funzioni definite negli header, pero', sono tutte di tipo
extern. Ogni qual volta compilo il programma mi appare questo errore:
undefined reference to <nome_funzione>
Credo che questo significhi che non trova i file dove la funzione
viene definita (e non solo dichiarata come ho fatto nell'header). Per
ulteriore precisione vi dico che il software da me creato e' in C++, i
file in cui sono definite le funzioni sono files C.
Vi ringrazio per l'aiuto e mi scuso per tutte gli eventuali errori
commessi.
Ciao
Arsenio Lupin
(togliere gli spazi e NOSPAM per rispondere in privato)

 commessi.
In linea di massima (95%) non hai linkato al tuo programma la libreria.
Dovrebbe esserci un file nomelibreria.a. Dě al linker di linkarla al tuo
programma.
--- bye

programma.
Grazie ma...come si fa con Kdevelop?
Grazie 1000.


Newsgroup: it.comp.lang.c++
Titolo: Problemi con double

Ho riscontrato i famosi problemi con il yipo double, dove per esempio la
somma di due double non è uguale a un double che contiene la somma dei due.
Es.
a = 65,31
b = 45,28
c = 20,03
if(a == (b+c)) restituisce false
1) Esiste un metodo per far si che la sua rappresentazione sia precisa (la
dove so che mantissa ed esponente sono rappresentabili in binario nel tipo
double)?
2) Devo arrangiarmi con dei controlli personali?
Ho già girato un po il NG ma ho trovato solo due soluzioni
1) controllo manuale
2) utilizzare un define del C che indica un valore minimo di scostamento
Altro non c'è?

 Altro non c'è?
http://makeashorterlink.com/?F2D731762
--
Gerolamo

Newsgroup: it.comp.lang.c++
Titolo: [?](struct puntatore)classe->membro

Salve a tutti,
Sono un principiante del C++. Sto studiando il seguente listato per una mia
applicazione.
std::string get_ip()
{
 in_addr *pptr[10];
 hostent *phe;
 char Buffer[63];
 LPWSADATA GInitData;
 std::string sIP = "";
 int I;
 GInitData = (LPWSADATA)malloc(sizeof(WSAData));
 WSAStartup(0x101, GInitData);
 gethostname(Buffer, sizeof(Buffer));
 phe = gethostbyname(Buffer);
 if(!phe)
 {
  free(GInitData);
  return sIP;
 }
 pptr[0] = (struct in_addr*)phe->h_addr_list[0]; ----> QUI C'E' IL DUBBIO
 I = 0;
 while(pptr[I])
 {
  sIP = inet_ntoa(*pptr[I]);
  I++;
    }
tralasciando l' implementazione, non capisco cosa significa la notazione che
ho evidenziato sopra e cioč:
(struct in_addr*)phe->h_addr_list[0]
č una notazione standard? se si qualcuno puň spiegarmi il suo significato in
generale ?
Grazie
Ciao
Michele
Newsgroup: it.comp.lang.c++
Titolo: Stranezza nei socket

Ciao a tutti,
ho scritto un'applicazione che dovrebbe trasferire via socket
dei bytes e, una volta ricevuti, salvarli su file.
La cosa sembra funzionare, ma mi arrivano 4 bytes in più.
Ecco il codice:
  ofstream file;
  file.open(stringa.c_str(),ofstream::out|ofstream::binary);
...................... -> operazioni non significative
  int offset=end-posiz;
  if (offset>0) {
   letti=s.recData(buf,offset);
   file.write(buf,offset);
  }
  file.close();
  s.chiudi();
La variabile offset l'ho monitorata e assume il valore corretto (162).
La dimensione del file ottenuto, facendo proprietà da Gest.Risorse,
è di appunto 162 bytes. Se però lo vado ad aprire noto che in coda
ci sono questi 4 simboli: ÌÌÌÌ. Inoltre secondo l'Ultraedit la dimensione
del file è 166 bytes, ovvero proprio 4 in più!
Il file mandato per prova è il mio autoexec.bat, che quindi è un semplice
file di testo, ma aprendolo con Ultraedit mi viene chiesto se voglio
convertirlo
dal formato UNIX, il che mi lascia molto perplesso.
Concludo dandovi l'implementazione di recData, che fa parte di una classe
che ho scritto per gestirmi i socket:
int SuperSock::recData(char* buf,int len) {
 if (s<0) return -1;
 return recv(s,buf,len,0);
}
Sapete dirmi dove sbaglio? Non capisco proprio!!!
Grazie!

..non è una stranezza, ti è arrivato l' end of file EOF.
--
Packy
"misirion" <misi...@NOSPAMfreemail.it> ha scritto nel messaggio
news:KXkMa.3090$HU3....@news2.tin.it...

** Articolo inviato tramite i servizi gratuiti di 
www.x-privat.org
 **

 ..non č una stranezza, ti č arrivato l' end of file EOF.
E... come mai č finito scritto lě quando avrebbe dovuto scrivere solo 162
bytes???

Sto usando il seguende codice per trasferire i 162 bytes di cui parlavo:
 while (!file.eof()) {
  file.read(buf,1);
  s.sendData(buf,1);
 }
Sembra funzionare, ma alla fine ci sono due bytes in più: sono quelli
relativi a un "a capo" conclusivo del file, che viene stampato per due
volte invece di una! Com'è possibile? Il problema sta qui e non dal lato
client, visto che il client scrive correttamente quello che riceve...
Perchè l'ultimo a capo arriva due volte?

Problema risolto, mancava il flag ifstream::binary in apertura.
Grazie cmq.
"misirion" <misi...@NOSPAMfreemail.it> ha scritto nel messaggio
news:Zf_Ma.12162$xK6.3...@news1.tin.it...


Newsgroup: it.comp.lang.c++
Titolo: Swedish C++ course for newbies

For the swedes out there, Controlled Strike has a C++ newbie course
available at this time...this is for the swedes out there, since the
course is in swedish. See Controlled Strike's website.
http://w1.838.telia.com/~u83803676

vorrei conoscere qualcuno che si intenda della programmazione di giochi in c

cerco qualcuno che sappia programmare giochi in c
yag...@tiscalinet.it
Newsgroup: it.comp.lang.c++
Titolo: Problemi con argv[]

Salve, 
sapete dirmi perché se dalla prompt digito:
miofile saluta
non appare nulla? ho provato anche
miofile.exe saluta  
ma niente. Eppure il primo comando non č memorizzato su arg[1] visto che
argv[0] ha la path del file?
#include <iostream>
int main (int argc, char* argv[]) {
	if (argv[1] == "saluta")
		std::cout << "ciao" << std::endl;
	return 0;
}
Grazie
-- 
Posted from 
ppp-70-9.29-151.libero.it
 [151.29.9.70] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 if (argv[1] == "saluta")
arghhhhh!!!!!!! PAZZO!!! :))
non puoi usare l'operatore '==' con i char*, ma solo con le string.
devi usare l'istruzione 'strcmp' che si trova in string.h


In questo modo:
if (strcmp (argv[1], "saluta"))  ?
Grazie
--
Luigi
http://web.tiscali.it/luigi_web
byte...@hotmail.com
ICQ 46240443

if (strcmp (argv[1], "saluta"))  ?
No, strcmp ritorna 0 se le stringhe sono uguali
-- 
Marco Barisione (ICQ 84277092)

Va bene lo stesso, basta mettere un not...
Ciao


Va bene lo stesso, basta mettere un not...
Appunto mettilo!  :-)


Newsgroup: it.comp.lang.c++
Titolo: Creare un linguaggio di script utilizzando un interprete già esistente

Salve, ho trovato un interprete di linguaggio C molto potente e vorrei
inserirlo in una mia applicazione per utilizzarlo come linguaggio di script.
Quindi mi serve aggiungere al set di funzioni alcune funzioni nuove interne
all'applicazione....come devo fare? spero di essermi spiegato
bene...grazie....
Demetrio Filocamo (
dfil...@tin.it
)

 bene...grazie....
Prego, dare risposte comprensibili a domande chiare e dettagliate e' un
dovere ;)
--
Fabrizio Di Giuseppe
Real email address: fabrizio@_REMOVEME_iride.com
http://www.iride.com/fabrizio
Sent via Deja.com 
http://www.deja.com/
Share what you know. Learn what you don't.

Ciao! grazie per la risposta.....io non me ne intendo molto di interpreti
però quello che volevo sapere è se potevo inserire dentro il linguaggio
delle mie funzioni (già compilate) da usare come comandi aggiuntivi per
comandare l'applicazione....grazie mille!
Ciao!
Demetrio
Newsgroup: it.comp.lang.c++
Titolo: ShellExecute per stampare

Salve premetto di non essere un esperto di C++...... (quindi ringrazio
anticipatamente)
Per un programma che ho sviluppato ho dovuto utilizzare
una win API che si chiama ShellExecute dalla documentazione MSDN:
HINSTANCE ShellExecute(
    HWND hwnd,
    LPCTSTR lpOperation,
    LPCTSTR lpFile,
    LPCTSTR lpParameters,
    LPCTSTR lpDirectory,
    INT nShowCmd
);Nel mio caso dovendo effettuare delle stampe di alcuni modelli PDF da riga
di comando, senza sapere dove è installato l'Acrobat ho pensato di
utilizzare ShellExecute con ilcomando "print" sul parametro
«lpOperation».Tale programma pare funzionare correttamente....ma l'Adobe
viene comunque eseguito a finestra invuota (cosa questa non
desiderata).Nessuno sa dirmi come poter ovviare a tale inconveniente??Grazie
e buon lavoro by
Bozu----------------------------------------------------------------Spesso
una cosa viene ritenuta impossibile dai più, ma poi arriva uno sprovveduto
che non lo sa e la realizza. Albert Einstein

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: IL canali di input in C++

Ho recentemente scritto un programma per la gestione di database
alfanumerici e durante la fase di testing si sono imbattuto in un problema
un po' strano che nessun testo attualmente in circolazione sull'argomento
e'riuscito a risolvermi:
Se facciamo girare il seguente programmino:
#include <iostream.h>
void main()
{
	int aa=0;
	while(aa!=-1){
		cin>>aa;
		if (!cin) cin.clear();
		cout<<aa;
	}
}
e alla richiesta di input ,invece di immenttere un intero, immettiamo un
carattere il canale di input (cin) si blocca come giustamente deve
fare...il problema e'quando si cerca di riabilitarlo con il comando
cin.clear() che non funziona!!!!
Qualcuno sa dirmi perche'?????
my e-mail is : 
s19...@studenti.ing.unipi.it

cin.clear() che non funziona!!!!
In che senso "non funziona"?  cin.clear() togliera` l'indicazione
d'errore, mica il "carattere" immesso -- che e` ancora li`, verra`
nuovamente letto al prossimo tentativo, ecc, da cui loop infinito.
Alex

Allora,non vorrei sbagliarmi ma la libreria istream.h se accade un errore
del genere automaticamente libera il canale dall'ultimo dato
letto,comunque ho dato un occhiatina nella libreria e non vi sono funzioni
per pulire il baffer del 'cin'.....io so che altro fare!!!!!
Se puoi aiutarmi in concreto te ne sarei molto grato...grazie!!!


Se puoi aiutarmi in concreto te ne sarei molto grato...grazie!!!
Ecco un esempio, molto simile al tuo, che fa
qualcosa che penso sia piu` vicino a cio`
che desideravi:
#include <iostream>
using namespace std;
int main(int argc, char* argv[])
{
    int aa=0;
    char c;
    while(aa!=-1){
        cin>>aa;
        if (!cin) {
            cin.clear();
            cin>>c;
            if(!cin) break;
        } else {
            cout<<aa<<endl;
        }
    }
    return 0;
}
Se non riusciamo a leggere da cin neppure una
variabile-carattere, c, allora vorra` dire che cin
e` terminato (o che ci sono errori fisici di I/O),
per cui e` probabilmente meglio uscire dal loop;
se ci riusciamo, si "sgombra" (magari parzialmente)
il buffer del canale di input da un carattere che non
risultava leggibile come parte di un int.  Immagino
inoltre che si voglia vedere il valore letto solo se
lo si e` effettivamente letto, per cui ho spostato
l'uscita al ramo "else" (lettura con successo) del
controllo effettuato dopo la lettura.
Facci sapere se questo risolve il tuo problema...
Alex

Grazie del tuo aiuto, infatti con la tua ultima e-mail mi hai data la
soluzione del problema....difatti l'ultimo dato immesso attraverso il
canale 'cin' rimaneva li'....e quindi ogni volta che vi si accedeva non
faceva altro che leggere lo stesso dato....
..andando in giro per la libreria non ho trovato lstruzione fflush() che
funziona per la vecchia libreria del C (stdin) ma ovviato con l'utilizzo
della funzione cin.get()...
ti ringrazio ancora.... a buon rendere!!!!
		Davide.
Newsgroup: it.comp.lang.c++
Titolo: Inibire l' uso di un metodo privato...

Ciao a tutti,
mi scuso per la domanda forse banale, ma vorrei sapere se è possibile
inibire l' utilizzo di un metodo privato di una classe a taluni metodi
pubblici (della medesima classe) o, il che è lo stesso, concederne lo
utilizzo solo ad alcuni 
Grazie :)

La risposta è NO. Sei metodi sono della classe, non è possibile inibirne
l'uso. Questi non sono utilizzabili all'esterno della classe o da classi
derivate.
-- 
giove
------------------------------------------------------------------------
Visualizza questa discussione: 
http://www.freenfo.net/usenet/thread680857.html
Profilo di giove: 
http://www.freenfo.net/usenet/member.php?userid=137

 
Immaginavo una cosa simile non avendone trovato menzione nè sui testi
nè su diversi siti dedicati
Ti ringrazio dell' attenzione :)

 wrote:

Puoi ottenere qualcosa di analogo definendo il metodo privato in una
classe base, definire alcuni metodi pubblici in questa (e questi avranno
accesso ai metodi privati) e definre gli altri nella classe "vera",
sottoclasse di quella base (questi non potranno accedere ai metodi
privati della classe base).
Ma perchè vuoi fare questo?
 
-- 
L'idiozia trascende il mezzo con cui viene espressa.


Ci sono casi in cui puo' avere senso "compartimentare" una classe.
Pensa ad esempio di avere un membro puntatore che puo' essere nullo.
Vuoi essere sicuro di fare il controllo ad ogni accesso e quindi
definisci una funzione membro di accesso:
#include <stdexcept>
class C {
  public:
    C() : ptr(0)
  private:
    int * getPtr() const { if ( ptr == 0 ) throw std::runtime_error();
return ptr; }
    int * ptr;
};
In questo modo pero' non puoi imporre alle funzioni membro della classe
di chiamare sempre getPtr() invece di accedere a ptr. Le soluzioni sono
due: o sposti ptr e getPtr() in una classe base rendendo il primo
privato ed il secondo protetto o pubblico, oppure inventi una specie di
smart pointer che fa sempre il controllo quando viene dereferenzato.
Ciao,
Nicola

 
Hai centrato il mio problema...purtroppo non posso riportare il codice
che verrebbe facilmente riconosciuto dal mio docente :)
In ogni caso ho a che fare con un metodo privato ricorsivo di supporto
che effettua la cancellazione di una struttura dati costruita in
maniera dinamica lasciando un dangling pointer al termine del
processo...tale puntatore è post a NULL dal metodo pubblico che lo
richiama ma, ahimè, solo da esso che dovrebbe, quindi, essere l' unico a
poter fruire del suddetto metodo privato (assieme al distruttore
per il quale il problema non si pone) 
Di qui la volontà di capire se è possibile riservare l' uso di un
metodo privato ad una parte dei metodi pubblici
Vi ringrazio dell' attenzione e dei consigli e mi scuso del ritardo nel
rispondere...ho avuto un po' di problemi con la posta!
Ciao :)
Newsgroup: it.comp.lang.c++
Titolo: ?Capire Se Un Array é Allocato

Ciao a tutti,
se vi avanzano trenta secondi
potete aiutarmi?
Per  ridimensionare un vettore
float *vet;
...
vet=new float [dim];
avrei la necessità di cancellarlo
per poi ricrearlo della nuova dimensione.
Il problema è che non so se già esiste oppure no.
Copiando da un'esempio ho provato:
if(vet) delete[] vet;
Ma non funzia!
Come posso fare per capire se già esiste?
Per adesso sto usando 'try' ma mi sta antipatico.
Ciao a tutti e grazie.
Alessandro.

 float *vet;
float *vet=0;

In linea di principio non c'e` un modo sicuro per accertarsi della
cosa, la soluzione e` quella di inizializzare sempre i puntatori,
allocando una variabile oppure ponendoli a 0 quando non puntano
a nulla. In tal modo un semplice "if (Ptr) " e` sufficiente a capire
lo stato del puntatore.
Comunque la cosa piu` semplice (sebbene non sempre la piu` efficiente)
e` quella di usare la classe std::vector che provvede automaticamente
a ridimensionarsi quando serve.
Paolo
-----------------------------------------------
  Paolo Marotta
  Computer Science, University of Pisa
  home:   
http://www.cli.di.unipi.it/~marotta
-----------------------------------------------

 Ma non funzia!
Così funzionerebbe.
EMG

]

 Il problema è che non so se già esiste oppure no.
Chi viene dal C, ti può facilmente dire di usare sempre NULL per i puntatori
non allocati.
E *sempre* vuole dire che nel momento in cui lo dichiari e non appena liberi
l'area puntata, devi affrettarti a metterlo a NULL.
Dopo funziona l'esempio che hai postato.
--
Alessandro Monti

Grazie a tutti.
Alessandro.
Newsgroup: it.comp.lang.c++
Titolo: Convertire array multidim in vector

Salve
Vorrei sapere se è possibile convertire un'array miltidim. in uno monodim o
vector, senza usare for.
Es::
int abint[2][2]; //2 e 2
int aint[4];        //2*2=4
int tmp=0;
for(int i=0;i<2;i++)
    for(int j=0;j<2;j++){
        aint[tmp]=abint[i][j];
        tmp++;
    }
Non c'è un metodo + veloce (magari con memcopy o STL)?
Grazie
Ciao
--
Timothy Redaelli

 Non c'è un metodo + veloce (magari con memcopy o STL)?
memcpy(aint, abint, sizeof(int) * 4);
Ciao
Gaetano
--
#exclude <windows>
printf("\t\t\b\b\b\b\b\b");.
printf("\t\t\b\b\b\b\b\b");

 memcpy(aint, abint, sizeof(int) * 4);
Ok, grazie sono riuscito anche con i vector:
memcpy(vint.begin(),abint,sizeof(int)*4); //naturalmente vector con size a 4

 memcpy(vint.begin(),abint,sizeof(int)*4); //naturalmente vector con size a 4
Mi pare la strada giusta per andare a sbattere...
Ciao,
Nicola

 ha scritto nel messaggio
news:3C46F1FA...@divalsim.it...

In che senso?
Ciao
--
Timothy Redaelli


Nel senso che mi pare pericoloso scavalcare l'interfaccia pubblica di
vector. Ad esempio non e' garantito che vint.begin() ritorni un
puntatore...
Ciao,
Nicola

 ha scritto nel messaggio
news:3C470B32...@divalsim.it...

E allora cosa consiglieresti?
Grazie cmq a tutti.
Ciao
--
Timothy Redaelli

 ha scritto nel messaggio
news:a26k1s$ufig3$1...@ID-87006.news.dfncis.de...
: Salve

:
:

 E allora cosa consiglieresti?
Usa array e memcpy solo se hai veramente bisogno di prestazioni elevate,
altrimenti usa vector e gli algoritmi (anche se nel tuo caso mi sa che
non ci sono alternative ai cicli for).
Ciao,
Nicola

Newsgroup: it.comp.lang.c++
Titolo: formato MP3

Dove posso trovare informazioni sul formato mp3 ???
Grazie
Riccardo



http://www.wotsit.org/
PS: sei OT
Newsgroup: it.comp.lang.c++
Titolo: programmae device driver...

Salve a tutti,
volevo sapere dove poter reperire documentazione sulla programmazione di
driver, nel mio caso si tratterebbe di un joypad...
Grazie, Lorenzo.

 driver, nel mio caso si tratterebbe di un joypad...
Dipende strettamente dalla piattaforma che hai intenzione
di usare, NON dal linguaggio C++, quindi la domanda non
e` appropriata in questo gruppo.
Chiedi quindi in it.comp.amiga, it.comp.as400, ... , e/o
it.comp.programmare.win32, a seconda della piattaforma
di tuo interesse, ma non in it.comp.lang.c++, grazie.
Alex

Caro Alex,
la tua foga iconoclasta contro l'abuso (indubbio) di it.comp.lag.c++ e' piu' che
giustificata. Detto questo, come pensi che debba comportarsi un povero cristo in cerca di
aiuto il cui news server per un qualsiasi motivo non mette a disposizione
it.comp.programmare.win32?


 it.comp.programmare.win32?
Penso che la cosa piu` semplice sia farsi account gratis sui vari
fornitori di internet gratis, come Libero e Clubnet-Tin, i quali
hanno entrambi un buon newsfeed e naturalmente comprendono
i.c.p.win32.  In second'ordine, protestare col news server ed
esigere che metta a disposizione i gruppi tecnici che servono
(se l'individuo, o il suo datore di lavoro o scuola, paga per la
rete, in tempi in cui si puo` averla gratis, avra` almeno diritto
a un livello di servizio equivalente a quello dei fornitori
gratuiti, no...?).
Se il fornitore news mettesse a disposizione solo, che so,
italia.jesi.signorsindaco, tu pensi che sarebbe ragionevole
che "il povero cristo" postasse li` tutti i suoi messaggi
sul C++, su Win32, eccetera...?-)
Alex

Vorrei sapere come ampliare il serbatoio della mia Panda. Quali funzioni
devo usare?

 devo usare?
Io userei la FIAT::tank.resize(), ma c'e` chi preferisce la .reserve().
Alex

 it.comp.programmare.win32?
E se non mette a disposizione neanche it.barzellette che si fa si
postano le barzellette qui? Scherzo... ma fino ad un certo punto...
EMG

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

Ciao a tutti,
ho una domanda su diversi typedef che ho trovato nella stl.
Nella definizione del container map ci sono delle righe dove si ha
typedef iterator;
etc...
typedef me lo ricordo con la sintassi
typedef  nometipo nuovonome tipo
oppure con le struct, o i puntatori a funzioni, array...
quindi typedef nome
che cosa vuol dire? e' una sorta di un forward declaration per i tipi?
cioe' il compilatore capisce che c'e' e non si chiede come e'
definito?
grazie,
saluti
w

 definito?
Mah, in tal caso si userebbe class, non typedef. Non è che puoi postare il 
codice incriminato?
Ciao,
-Federico

 codice incriminato?
ciao,
concordo pienamente con te infatti la cosa mi puzzava. Ecco il link
del codice:
http://www.informatik.uni-freiburg.de/~danlee/fun/STL-doc/STL/Vector.html
ciao
p.s. scusa il ritardo nella risposta
Newsgroup: it.comp.lang.c++
Titolo: [OT forse] Esiste un sito...

Esiste un sito comune per questo NG ?
Grazie Roberto - Syd

No, ma 
www.programmazione.it
 e' quello su cui trovi la maggior parte
delle informazioni disponibili legate a questo newsgroup (FAQ, tutorial,
ecc.)
Ciao,
Nicola

 ha scritto nel messaggio
news:3BC18E1C...@divalsim.it...

Grazie per la risposta.
Roberto - Syd

Newsgroup: it.comp.lang.c++
Titolo: Classi e DLL

 
Ciao a tutti!
Dovrei esportare una classe in una dll; dopodichè dovrei importarla
dinamicamente nel mio codice. Fino ad ora sono solo riuscito ad importarla
staticamente utilizzando la lib generata dalla dll.
Qualcuno può darmi una mano nelle due operazioni? O consigliarmi un link? E'
un po' che cerco ma non trovo niente...
Grazie in anticipo,
Cosimo.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

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

 [...]
Meno male che fai tu da "moderatore" con questo messaggio preimpostato.
:-)
PS: Ma non converebbe forse postarlo regolarmente, ad ammonimento per i 
molti che fanno domande platform dependent qui?

 molti che fanno domande platform dependent qui?
Teoricamente per quello c'e' gia' il messaggio automatico col
manifesto, ma evidentemente non sono in molti a leggerlo.
Ciao,
Nicola

Newsgroup: it.comp.lang.c++
Titolo: METTERE UN FILE IN SOLA LETTURA

COME POSSO ALLOCARE UN FILE .TXT???

 ha scritto nel messaggio
news:8jaB9.34488$8E3.9...@twister2.libero.it...


 ha scritto nel messaggio
news:KGAB9.39493$8E3.1...@twister2.libero.it...


 ma mi succedono dei gran casini, perdita di dat eccetera...
Come controlli che due utenti non scrivano allo stesso tempo o che
nessun utente legga mentre un altro scrive?
La soluzione migliore e' utilizzare un DBMS.
Ciao,
Nicola
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ha scritto nel messaggio
news:7bc17e7fef9ff006a2...@mygate.mailgate.org...

Newsgroup: it.comp.lang.c++
Titolo: Aiuto stampe da VC++5.0

Cerco un modo per settare una stampante da VC++ in modo che stampi a 132
colonne X 12 inch.
Sono riuscito a stampare a 132 colonne X 11 inch settando nella struttura
DEVMODE la variabile dmPaperSize=DMPAPER_FANFOLD_US.
Ho già provato ad assegnare a dmPaperSize tutti i valori che sono presenti
nell'Help ma con nessuno funziona correttamente.
Mi affido a voi che leggete per avere la soluzione al più presto possibile.
Ogni tipo di aiuto è ben gradito.
Ringrazio anticipatamente.

Questo newsgroup si occupa del lingaggio C++ in quanto tale, e non di
aspetti specifici di particolari implementazioni. Per richieste cosi'
specifiche sei pregato di rivolgerti a gruppi piu' adatti.
Per Win32 (95, 98, NT): it.comp.programmare.win32
Per Linux:      it.comp.linux.development
                it.comp.os.linux.development
Grazie,
Nicola Musatti
Newsgroup: it.comp.lang.c++
Titolo: Posiszione del curosore nello schermo!

Mi chiedevo come potevo identificare le coordinate del puntatore sullo
schermo!
Avete qualke idea!
Grazie

Avete qualke idea!
Cursore o puntatore? Sono due cosa diverse: il cursore (detto anche "caret")
è quel trattino o quel blocchetto lampeggiante che ti indica la posizione di
scrittura in modalità testo mentre il puntatore è quella piccola immagine
che rappresenta la posizione sullo schermo di un dispositivo di puntamento
quale è il mouse.
Inoltre dovresti specificare quale compilatore utilizzi e a quale
piattaforma ti stai riferendo.
Comunque per nessuna delle due cosa esiste alcunchè nella libreria standard.
Ciao, Giuseppe
---------------------------------------------------------------------------
_Guybrush su IRCNet canale #programmazione
---------------------------------------------------------------------------

 wrote in message
qCkt3.3208$98.4...@typhoon.libero.it...


Se avete qualke idea...
Se l'ambiente è Winsozz devi intercettare i messaggi WM_MOUSEMOVE nella
Window Procedure.
Ciao, Giuseppe
---------------------------------------------------------------------------


 Window Procedure.
Questa cosa interessa anche me... ho una finestra di dialogo che č
completamente "coperta" da un controllo; devo sapere quando il mouse č
posizionato sopra questo controllo, ma selezionando con Class Wizard l'ID
del controllo in questione, l'evento  WM_MOUSEMOVE non č disponibile.
Ho provato ad intercettare il messaggio nella finestra di dialogo
(associando una funzione OnMouseMove all'evento WM_MOUSEMOVE), ma non
funziona. Penso che il motivo sia proprio che la finestra č coperta dal
controllo, infatti se lo tolgo riesco ad intercettare i messaggi.
Aiuto!
N.B. Utilizzo Visual C++ 6.0

N.B. Utilizzo Visual C++ 6.0
I messaggi del mouse vengono inviati alla finestra su cui questo è
posizionato, quindi è normale che quando il puntatore si trova sul controllo
la dialog non riceva i messaggi WM_MOUSEMOVE. Se proprio ti serve sapere
quando il mouse si trova sul controllo puoi provare a subclassare
quest'ultimo in modo che invii un messaggio alla dialog quando il mouse
entra ed esce dalla sua area client. Non provare a catturare il mouse perchè
non funzionerebbe (dovresti avere il pulsante del mouse premuto).
Ciao, Giuseppe
---------------------------------------------------------------------------
_Guybrush su IRCNet canale #programmazione
ICQ: 42227764
---------------------------------------------------------------------------

Newsgroup: it.comp.lang.c++
Titolo: Slot Machines

C'è qualcuno qui che saprebbe fare una slot machine ? 

 C'č qualcuno qui che saprebbe fare una slot machine ?
Qui sei OT, questo newsgroup tratta di C++ standard.
Per la scatola esterna in legno, le parti in vetro e le parti meccaniche
prova a chiedere su "it.hobby.fai-da-te", mentre per le luci ed il resto
dell'elettronica posta su "it.hobby.elettronica".
Ciao.
Francesco.
-- 
Qual'e' il colmo per uno studente-lavoratore?
Avere un quadrato che si crede un rettangolo.
Newsgroup: it.comp.lang.c++
Titolo: puntatore ad array

forse e` una domanda banale, ma se ho una cosa tipo :
int (*i)[5];
void main()
{
    i = (cast a cosa?) malloc(5*sizeof(int));
}
come faccio ad assegnare ad i il valore restituito da malloc senza avere
warning o errori ?
ho provato a fare un cast a (int*) ma non piace al djgpp
grazie

Ranger,
Per non avere errori dovresti scrivere qualcosa di questo tipo:
---------------------------------
#include <stdlib.h>
int (*i)[5];
void main()
{
    i = (int (*)[5]) malloc(5*sizeof(int));
}
---------------------------------
Ovvero ripetere esattamente il tipo che hai messo nella dichiarazione di
"i", senza indicare il nome della variabile.
Forse, però, puoi semplificare ulteriormente il codice.
Se ho capito le tue intenzioni, vorresti allocare un vettore di 5 interi e
quindi assegnare il puntatore alla variabile "i". In effetti non e'
necessario che tu indichi in fase di dichiarazione la dimensione del
vettore (...tanto piu' che comunque non avresti nessun controllo aggiuntivo
in fase di esecuzione).
Puoi quindi scrivere:
---------------------------------
#include <stdlib.h>
int *i;
void main()
{
   i = (int *) malloc(5*sizeof(int));
}
---------------------------------
In pratica usi la stessa dichiarazione sia per usare un puntatore ad un
intero che ad un vettore di interi.
Naturalmente per usare il vettore puoi continuare a scrivere
---------------------------------
i[3] = 5;
---------------------------------
oppure, usando la cosiddetta "aritmetica dei puntatori":
---------------------------------
*(i + 3) = 5;
---------------------------------
Spero di esserti stato di aiuto.
Ciao, Angelo.

Newsgroup: it.comp.lang.c++
Titolo: Creare l'istallazione di un programma fatto in VC++

Ciao a tutti.
Ho realizzato un programma (un analizzatore di rete locale) in Visual C++ e
volevo sapere se è possibile creare un file setup.exe che permetta di
installare anche le DLL al posto giusto. So che in VB esiste un Wizard, ma
in VC no. Esistono tools esterni o della stessa microsoft?
Ciao
Grazie
Sergio

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 Linux:      it.comp.os.linux.development
Per C++Builder: i gruppi borland.public.cppbuilder.*, disponibili sul
                server 
forums.borland.com
 (in inglese)
Grazie,
Nicola Musatti
Newsgroup: it.comp.lang.c++
Titolo: stringhe ed automi in c++

Scusate la mia ignoranza per favore ma devo fare degli esercizi di
informatica i quali trattano le stringhe...per esempio dopo quanti caratteri
la stringa s2 compare in s1  e poi esercizi sugli automi a stati finiti di
cui devo simulare il comportamento in c++.
Mi potete aiutare?


Si. Esiste la funzione strstr().
EMG

 wrote in message
7ui70e$fh8$1...@nslave1.tin.it...


Newsgroup: it.comp.lang.c++
Titolo: determinare il mese e l'anno di sistema

salve a tutti.
NOn saprei come ricavare il mese corrente e l'anno corrente in due 
variabili intere.
qualcuno mi può dare una mano?


ok. già risolto. grazie

 ok. già risolto. grazie
Mi diresti come hai fatto?


     int intMese, intAnno
     time_t t = time(NULL);
     tm *tempo;
     tempo = localtime(&t);
 
     intMese = tempo->tm_mon + 1;
     intAnno  = tempo->tm_year + 1900;

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

Cerco disperatamente qualcuno che mi possa dare una mano con una tesina
in c++, perchè non sò come andare avanti, altrimenti addio laurea.
Aiuto
sacha



1) spero ardentemente che qualcuno da Firenze legga il tuo post
2) a che ti serve una tesina?  se qualcuno si prende la briga di
   discuterla, penso ti possa giudicare senza problemi per quello
   che vali
3) "so" si scrive senza accento
-- 
Maurizio Loreti                         
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

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

Scusate se rompo ancora le scatole, e ditemi se sono OT qui. Come posso in
Microsoft Visual C++ cambiare le varie proprietą dei controlli? Per esempio
il carattere di una textbox, il fatto che una optionbox sia checked o meno
ecc...? In visual basic facevo nomecontrollo.nomeproprietą, ma in Visual
C++?
Grazie a tutti.
---
Ramses
---
http://evilz0ne.cjb.net
http://knowledgeparty.cjb.net

 C++?
Mettiamola cosi': se la tua domanda non e' rispondibile da chi programma in C++
da anni sotto unix e non ha mai visto Windows ne tanto meno VC, allora al
99.999999% e' off topic.
Inoltre la domanda non e' rispondibile perche' non dici in che modo crei i
controlli, e in C++ ci sono vari modi (MFC, API, librerie di terze parti, etc.).
Comunque passa ad un NG piu' appropriato.
Avvertenza: anche se ti ho risposto, non scrivermi in e-mail: non ne ho idea
perche' nei miei progetti i casi sono sempre uno di questi 4:
1) l'interfaccia utente e' in VB o in un altro linguaggio
2) l'interfaccia utente io manco la vedo, se ne occupano altri
3) l'interfaccia utente non c'e'
4) l'interfaccia utente non e' grafica
--
Andrea Ferro
---------
Brainbench C++ Master. Scored higher than 97% of previous takers
Scores: Overall 4.46, Conceptual 5.0, Problem-Solving 5.0
More info 
http://www.brainbench.com/transcript.jsp?pid=2522556

 99.999999% e' off topic.
Allora scusate se ho sbagliato. Ma allora sai anche dirmi dove posso postare
questa domanda?

Newsgroup: it.comp.lang.c++
Titolo: Cerco manuale Turbo C++ 1.01 per DOS

Sto cercando la manualistica del Turbo C++ 1.01 per DOS, in formato cartaceo
o elettronico, ma stampabile.
Mi rendo conto che si tratta di preistoria del software, ma e' proprio
l'ambiente che mi serve.
Se per caso ne aveste una copia, per favore inviatemi un mail
(
ron...@elet.polimi.it
).
Grazie


Neanche tanto preistorico ... per alcune cosette "semplici" e' molto
efficace e "pulito".
Ho tenuto un corso sull'argomento qualche mese fa.
Uno dei tanti libri (in italiano) veramente buoni sull'argomento e':
"Turbo C" , di H.Schildt - McGraw-Hill
e' del 1988!
Gratis in Biblioteca.
Sto preparando qualcosa da mettere in rete, ma ci vorra' ancora molto.

 "Turbo C" , di H.Schildt - McGraw-Hill
Uno dei pochi autori per il quale esistono interi *siti* che spiegano
perche' i suoi libri vanno evitati come la peste. Mmmmh...
Ciao,
Nicola
P.S. Scommetto che scrivi "void main()".

Sto preparando qualcosa da mettere in rete, ma ci vorra' ancora molto.
Buona pesca. :-)))
Il Ghenio
WINWORD.EXE - ERRORE DI APPLICAZIONE
l'istruzione a "0x3017ff27"ha fatto riferimento alla
memoria a "0x02a3143c".La memoria non poteva essere 'read'.

Newsgroup: it.comp.lang.c++
Titolo: quesito visual c++, dove?

Ciao a tutti,
posso porre qui un quesito sul visual c++ oppure mi sapreste consigliare un
NG apposito?
Ciao
Domenico

 NG apposito?
No. Qui si tratta solo di questioni standard, cioe' indipendenti 
dall'ambiente di sviluppo e dal sistema operativo.
Per rimanere ai newsgroup in italiano, puoi rivolgerti a:
 
microsoft.public.it.dotnet.vc
++
   microsoft.public.it.dotnet.vstudio
   it.comp.programmare.win32
-- 
     Carlo Milanesi
 
http://digilander.libero.it/carlmila
Newsgroup: it.comp.lang.c++
Titolo: Microsoft VC++ e Borland C++

Voglio acquistare un compilatore visuale per C++, ma non so se sia migliore
Microsoft Visual C++ o Borland Builder C++.
Grazie



Dipende da cosa devi fare

Newsgroup: it.comp.lang.c++
Titolo: problemi con static const

In una classe ho creato delle costanti statiche in questo modo:
nel .h:
  static const std::string GMT;
e nel .cpp:
const std::string Date::GMT  ("GMT");
Poi ho compilato il .cpp su di una libreria statica .a con il gcc del cygwin
e qui funziona tutto correttamente. Lo stesso se compilo sotto gcc su Linux
e VisualAge su AIX. Invece se compilo sotto MingW-C++ (che dovrebbe essere
praticamente equivalente al cygwin) si compila perfettamente la libreria, ma
quando la uso mi da errori del tipo: ... undefined referenced to
'_imp___4Date$GMT' ... Sono io che utilizzo male le costanti oppure è solo
un problema di come uso il MingW? GRAZIE!

 ha scritto nel messaggio
news:WKpN9.42058$TC5.1...@twister1.libero.it...


 ha scritto nel messaggio
news:au6f7t$dtu$1...@lacerta.tiscalinet.it...


   static const std::string GMT;
cambialo in extern const eccetera. Sennò metti un oggetto GMT in tutti 
i file che includono l'header
-- 
 < 
http://www.reactos.com/
 >  Open source clone of Windows NT. Current
     Don't stand, REACT!      version 0.0.20. C, C++ and ASM developers
                              and beta testers are welcome!

 i file che includono l'header
No, in quel contesto 'static' non ha il significato che ha in C. Qui vale
comunque la ODR (One Definition Rule).
Max
Newsgroup: it.comp.lang.c++
Titolo: Strano comportamento del compilatore per eredità da classe template

Ho una classe template che eredita una classe template. Quando tutto il 
codice (dichiarazione e implementazione) � scritto nel file main.cpp 
l'istruzione "MapOrd<int> mymap;" non da errore. Se invece il codice � 
scritto mettendo la dichiarazione nel file "mapord.h" e l'implementazione 
nella classe "mapord.cpp", l'istruione "MapOrd<int> mymap;", sempre chiamata 
dalla funzione main, da il seguente errore: "undefined reference to 
`MapOrd<int>::MapOrd()'".
Perch�?
La classe in questione �:
template <class T>
class MapOrd : public QMap<QString, T>
{
    public:
        MapOrd();
        void insert(const QString& key, const T& value);
    private:
        QStringList keyOrderedList;
};
template <class T>
MapOrd<T>::MapOrd()
{
}
template <class T>
void MapOrd<T>::insert(const QString &key, const T &value)
{
    keyOrderedList.append(key);
    QMap<QString, T>::insert(key, value);
}

"Kaos" <NOS...@NOSPAM.it> ha scritto nel messaggio 
news:4a9bc468$0$43600$4faf...@reader1.news.tin.it...

Ho trovato una soluzione. Se invece di utilizzare l'istruzione:
MapOrd mymap;
si utilizza l'istruzione:
MapOrd mymap();
non da pi� problemi. Ma perch�?
Kaos. 

"Kaos" <NOS...@NOSPAM.it> ha scritto nel messaggio 
news:4a9bc9c0$0$43593$4faf...@reader1.news.tin.it...

Non riesco a fare funzionare il tutto quando la classe � dichiarata in un 
file .h e in un file .cpp.  Ma che succede?
Kaos, 

"Kaos" <NOS...@NOSPAM.it> ha scritto nel messaggio 
news:4a9bd02f$0$43593$4faf...@reader1.news.tin.it...

Ho trovato una FAQ che risponde al mio problema:
http://www.emagsoftware.it/faqcpp.htm#11
Kaos.

Newsgroup: it.comp.lang.c++
Titolo: porgramma per disconnettere

Qualcuno riesce a farmi e a mandarmi un semplicissimo programma che verifica
se si è connessi a internet e se si disconnette?? niente di più, il più
semplice e piccolo possibile, solo un eseguibile che stacca il modem...
Ringrazio anticipatamente la buon'anima che mi farà questo favore.
Rispondere (e mandare l'eventuale programma) a 
Torak...@hotmail.com
Grazie

semplice e piccolo possibile, solo un eseguibile che stacca il modem...
Sei OT, se vieni su it.comp.programmare.win32, ti dico come fare.
--
Andrea Laforgia (ICQ 87230455)

Newsgroup: it.comp.lang.c++
Titolo: Problemi installazione MSDN

Ho portato a termine l'installazione, tuttavia ad un certo punto mi si
chiede il cd di MSDN che, leggo, č contenuto nel pacchetto di Visual Studio
6: ho provato a sfogliare tutti e quattro i cd, ma non ho trovato nulla. Il
problema č che la guida in linea del VC++ non č presente, ed ogni volta che
provo ad aprirla mi si chiede di installare MSDN.
Vorrei sapere se si tratta di una parte di prodotto acquistabile a parte o
che altro.
Grazie.



...

Dei quattro CD di cui sei in possesso (dovrebbero essere 5: il VJ++ dov'č?)
due sono il Visual Studio vero e proprio mentre gli altri due sono il MSDN.
Lancia il setup dal primo di questi ultimi due CD e tutto dovrebbe filare
liscio.
Ciao, Giuseppe
Newsgroup: it.comp.lang.c++
Titolo: non capisco perchè non funzioni come dovrebbe...

Ho scritto questo piccolo grammetto, sempre per esercizio, praticamente dato un array di caratteri che funzioni da pad, ed un array di caratteri formato dalle
lettere del nostro alfabeto, operare in base all'input dato una sostituzione delle lettere inserire con quelle del pad.
Semplicissimo, eppure quando dichiaro la string alla quale deve essere assegnata la frase su cui operare, viene assegata solo la prima parola...
Sigh... se qualcuno potesse illuminarmi dicendomi dove sbaglio, ecco di seguito il sorgente:
#include <iostream>
#include <string>
using namespace std;
char *pad = "badcfeglmhzipqrstjknouvywx";
char *alfa= "abcdefghijklmnopqrstuvwxyz";
int i,j,pos;
int findIndex(char *ptrPad, char value)
{
for (i=0;i<26;i++)
 {
 if (ptrPad[i] == value)
   {
   pos = i;
   break;
   }
 }
return pos;
}
int main()
{
  cout << "Inserisci la frase da sostituire: " << endl;
  string frase;
  cin >> frase;
  const char *ptrString = frase.c_str();
  int size = frase.size();
  cout << size << endl;
  for (j=0;j<size;j++)
   {
   if (static_cast< int >(ptrString[j]) < 97 ) {cout << ptrString[j]; j++; }
   else
   cout << alfa[findIndex(pad,ptrString[j])];
   }
  return 0;
}

>  cout << size << endl;
La stampa di size non è necessaria...gliel'ho fatta fare per vedere quanti caratteri aveva messo in string...

   cin >> frase;
Ecco qua, svelato l'arcano: con la cin prendi solo la prima parola che e'
individuata dal primo spazio che si incontra nell'input.
Dovresti invece utilizzare la getline.
Maurus

>   cin >> frase;
ho provato con 
cin.getline(frase.c_str(),1024);
ma il compilatore mi da errore... dice no match for...etc
e mo?

 e mo?
hai detto al compilatore di scrivere su una const char*, che è
appunto l'oggetto che ritorna il metodo string::c_str().
devi usare std::cin.getline(frase, 1024);
--
Andrea Spadaccini - Catania (Italy)
Mail: _
lupin85...@libero.it
ICQ#: 91528290
 - It is not important what you believe, only that you believe -

devi usare std::cin.getline(frase, 1024);
si in effetti hai ragione, mi stavo scordando che il metodo string::c_str() restituisce un puntatore ad un oggetto char costante. Ho provato perciò
a rimodificarlo, però mi da lo stesso identico errore:
Could not find a match for 'istream::getline(string,int)'
...

Perseo wrote:

Errore mio.
Devi usare std::getline(std::cin, stringa);


Devi usare std::getline(std::cin, stringa);
Grazie ora č perfetto, ciao! :)
p.s. Auguri di buon natale a tutti i partecipanti a questo ng :)