Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo
Abbiamo provato per diversi giorni una new entry del mercato italiano, la Gowow Ori, una moto elettrica da off-road, omologata anche per la strada, che sfrutta una pendrive USB per cambiare radicalmente le sue prestazioni
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design
OnePlus 15 nasce per alzare l'asticella delle prestazioni e del gaming mobile. Ma non solo, visto che integra un display LTPO 1,5K a 165 Hz, OxygenOS 16 con funzioni AI integrate e un comparto foto con tre moduli da 50 MP al posteriore. La batteria da 7.300 mAh con SUPERVOOC 120 W e AIRVOOC 50 W è la ciliegina sulla torta per uno smartphone che promette di offrire un'esperienza d'uso senza alcun compromesso
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media
Vediamo come si comporta il Ryzen 5 7500X3D, nuovo processore di casa AMD che fonde 6 core Zen 4 con la tecnologia 3D V-Cache, particolarmente utile in scenari come il gaming. Annunciato a un prezzo di listino di 279€, il nuovo arrivato sarà in grado di diventare un riferimento per i sistemi budget? Ecco cosa ne pensiamo.
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: 16211
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


Test ride con Gowow Ori: elettrico e off-road vanno incredibilmente d'accordo Test ride con Gowow Ori: elettrico e off-road va...
Recensione OnePlus 15: potenza da vendere e batteria enorme dentro un nuovo design   Recensione OnePlus 15: potenza da vendere e batt...
AMD Ryzen 5 7500X3D: la nuova CPU da gaming con 3D V-Cache per la fascia media AMD Ryzen 5 7500X3D: la nuova CPU da gaming con ...
SONY BRAVIA 8 II e BRAVIA Theatre System 6: il cinema a casa in formato compatto SONY BRAVIA 8 II e BRAVIA Theatre System 6: il c...
KTC H27E6 a 300Hz e 1ms: come i rivali ma a metà prezzo KTC H27E6 a 300Hz e 1ms: come i rivali ma a met&...
Fire TV Stick 4K Select a prezzo da urlo...
IBM presenta i nuovi processori quantist...
Amazon Haul esplode di sconti: con l'off...
Dacia Sandriders, incontro con piloti e ...
Quanto costerà la Steam Machine? ...
QNAP TS-h1655XeU-RP: filesystem ZFS e co...
Etica e software libero protagonisti a S...
Il reattore che ricarica le batterie sca...
AMD FSR Redstone: la nuova tecnologia ba...
Meta Quest 3S a un prezzo senza preceden...
Rischio per gli SSD? I driver chipset AM...
Quanto sono 'woke' le intelligenze artif...
Rockstar rilancia Red Dead Redemption su...
Blue Origin centra l'obiettivo: New Glen...
Regali di Natale spendendo poco con il B...
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: 03:58.


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