Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora
WF-1000X M6 è la sesta generazione di auricolare in-ear sviluppata da Sony, un prodotto che punta a coniugare facilità di utilizzo con una elevata qualità di riproduzione dei contenuti audio e una cura nella riduzione del rumore ambientale che sia da riferimento
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI
Snowflake ha presentato diverse novità per la sua piattaforma legate all'intelligenza artificiale. Quella forse più eclatante è una collaborazione con OpenAI, ma non mancano diverse nuove funzionalità che rendono la piattaforma più flessibile e in grado di rispondere meglio alle esigenze in continuo cambiamento delle aziende
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI
Con velocità teoriche fino a 11 Gbps, gestione tramite app intelligente e protezione avanzata dei dispositivi, Roamii BE Pro porta il Wi‑Fi 7 tri‑band nelle abitazioni più esigenti. Un sistema Wi-Fi Mesh proposto da MSI allo scopo di garantire agli utenti una rete fluida e continua capace di sostenere streaming 8K, gaming competitivo e le applicazioni moderne più esigenti in termini di banda
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 02-10-2006, 08:54   #1
okay
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 906
[c++] strcpy()

faccio cose incredibili e mi perdo per le ca@@ate...


m_strStringa = (char *)malloc (512);
... assegno i char a m_strStringa e poi

char ok[512];
strcpy(ok,m_strStringa[0]);//ERRORE!!

m_strStringa contiene "i caratteri" e per scanzionarli uno ad uno mi serve inserirli nel char ok e poi tramite for leggerli uno ad uno facendo naturalmente strlen(ok);... ma non me lo permette il compilatore...

error C2664: 'strcpy' : cannot convert parameter 2 from 'char' to 'const char *'

oppure devo leggere un carattere alla volta di m_Stringa[0];

...è da ridere eh?

Ultima modifica di okay : 02-10-2006 alle 09:01.
okay è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 09:28   #2
Ziosilvio
Moderatore
 
L'Avatar di Ziosilvio
 
Iscritto dal: Nov 2003
Messaggi: 16213
Quote:
Originariamente inviato da okay
m_strStringa = (char *)malloc (512);
Questo è C, non C++.
Quote:
assegno i char a m_strStringa e poi

char ok[512];
strcpy(ok,m_strStringa[0]);//ERRORE!!
Se m_strStringa è un char*, allora m_strStringa[0] è un char.
Non puoi chiamare strcpy su un char* e un char: devi chiamarla su due char*.

P.S.: Hai la sign irregolare.
__________________
Ubuntu è un'antica parola africana che significa "non so configurare Debian" Chi scherza col fuoco si brucia.
Scienza e tecnica: Matematica - Fisica - Chimica - Informatica - Software scientifico - Consulti medici
REGOLAMENTO DarthMaul = Asus FX505 Ryzen 7 3700U 8GB GeForce GTX 1650 Win10 + Ubuntu
Ziosilvio è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 09:34   #3
okay
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 906
Quote:
Originariamente inviato da Ziosilvio
Questo è C, non C++.

Se m_strStringa è un char*, allora m_strStringa[0] è un char.
Non puoi chiamare strcpy su un char* e un char: devi chiamarla su due char*.

P.S.: Hai la sign irregolare.
char *ok;
strcpy(ok,m_Stringa[0]);

questo è ancora errore...
okay è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 10:27   #4
kk3z
Senior Member
 
L'Avatar di kk3z
 
Iscritto dal: Nov 2003
Messaggi: 980
Devi cambiare il secondo parametro, non il primo: cannot convert parameter 2 from 'char' to 'const char *'

strcpy(ok, &m_Stringa[0]);

che è lo stesso di

strcpy(ok, m_Stringa);
kk3z è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 10:44   #5
okay
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 906
Quote:
Originariamente inviato da kk3z
Devi cambiare il secondo parametro, non il primo: cannot convert parameter 2 from 'char' to 'const char *'

strcpy(ok, &m_Stringa[0]);

che è lo stesso di

strcpy(ok, m_Stringa);
Esatto... è una cosa che non mi era mai capitata!!

char ok[512];
m_strStringa = (char *)malloc (512);

strcpy(ok, &m_strStringa[0]);

perfetto grazie kk3z

una cosa:
cosa fà di preciso: (char *)malloc (512);
... e se invece usassi l'opratore new. Con l'operatore new otterrei lo stessa cosa di: m_strStringa = (char *)malloc (512); ?
okay è offline   Rispondi citando il messaggio o parte di esso
Old 02-10-2006, 11:14   #6
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da okay
e se invece usassi l'opratore new. Con l'operatore new otterrei lo stessa cosa di: m_strStringa = (char *)malloc (512); ?
m_strStringa = new char[512];

dà lo stesso risultato di

m_strStringa = (char *)malloc (512);

L'unica cosa è che poi devi fare un delete m_strStringa; e non usare la free() della libreria "C".
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo M...
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Keenadu, nuovo malware Android: Kaspersk...
MSI GeForce RTX 5090 Lightning Z a 2500 ...
Call of Duty: Warzone Mobile chiuder&agr...
Portatile tuttofare HP Ryzen 7, 16GB RAM...
LEFANT M3Max è uno dei robot pi&u...
Addio muffa e umidità: deumidific...
Apple TV in arrivo su CarPlay? Il codice...
TSMC pronta ad annunciare quattro nuove ...
Alla ricerca di un drone professionale a...
Stop agli assistenti AI integrati su tab...
iPhone 18 Pro e Pro Max: addio alle SIM ...
Samsung Galaxy S26: l'Exynos 2600 &egrav...
PS6 in forte ritardo e Switch 2 pi&ugrav...
Nuova rimodulazione da TIM: fino a 5 eur...
Apple annuncia un nuovo evento per il 4 ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:24.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v