Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
Con Midnight, Blizzard tenta il colpaccio: il player housing sbarca finalmente su Azeroth insieme a una Quel'Thalas ricostruita da zero. Tra il dramma della famiglia Ventolesto e il nuovo Prey System, ecco com'è la nuova espansione di World of Warcraft
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 27-01-2008, 18:09   #1
xeeynamo
Member
 
L'Avatar di xeeynamo
 
Iscritto dal: Jan 2008
Messaggi: 242
[C] Problemoni con le char

Salve a tutti! Stò realizzando un programmino in C che a seconda del valore in char che gli viene dato deve restituire una stringa. Vi faccio vedere più o meno come deve venire:

Codice:
char var1[5];
char var2[5];
lettura della variabile var1...
if (var1=="1234")
   *var2='abcd';
if (var1=="5678")
   *var2='efgh'
printf("%s",var2);
ma non funziona . Ho provato a fare di tutto: var2="prova", var1='valore', ma niente!! Programmo da un pò di mesi ma mai mi sono ritrovato un problema del genere davanti che magari è anche facile da risolvere. Grazie in anticipo x l'aiuto
xeeynamo è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2008, 18:27   #2
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da xeeynamo Guarda i messaggi
Codice:
char var1[5];
char var1[5];

/* ...omissis... */

if (var1=="1234")
In C non puoi mica farlo così il confronto di uguaglianza tra due array di char...
Troppo comodo! (Magari si potesse )

Devi ciclarti gli array e verificare carattere per carattere la corrispondenza delle due stringhe...
Ma se non devi farlo per esercizio allora utilizza le funzioni della libreria STRING.H

Quote:
Originariamente inviato da una fonte pescata a muzzo nel web
E' meglio sottolineare che le librerie standard del C comprendono un gran numero di funzioni (dichiarate in STRING.H) per la manipolazione delle stringhe, che effettuano le più svariate operazioni: copiare stringhe o parte di esse (strcpy(), strncpy()), concatenare stringhe (strcat(), strncat()), confrontare stringhe (strcmp(), stricmp()), ricercare sottostringhe o caratteri all'interno di stringhe (strstr(), strchr(), strtok())... insomma, quando si deve trafficare con le stringhe vale la pena di consultare il manuale delle librerie e cercare tra le funzioni il cui nome inizia con "str": forse la soluzione al problema è già pronta.
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2008, 18:42   #3
xeeynamo
Member
 
L'Avatar di xeeynamo
 
Iscritto dal: Jan 2008
Messaggi: 242
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
Devi ciclarti gli array e verificare carattere per carattere la corrispondenza delle due stringhe...
Ma se non devi farlo per esercizio allora utilizza le funzioni della libreria STRING.H
ahia... ma includere la string.h significa passare dal c al c++, quindi dovrei includere anche la iostream. o sbaglio? Comunque quello che stò facendo è un vero e proprio software che stà uscendo abbastanza bene. Il mio obiettivo era prendere dal registro la versione di windows (ad esempio la 5.1 che corrisponde all'XP o la 6.0 che corrisponde a vista) e cambiare parti del funzionamento del programma in base alla versione che il prog aveva trovato. La versione la legge e mi restituisce il valore 5.1 sull'xp e 6.0 su vista ma non sò come eseguire il programma in modo diverso al variare di quella stringa tutto lì è il problema
xeeynamo è offline   Rispondi citando il messaggio o parte di esso
Old 27-01-2008, 18:46   #4
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da xeeynamo Guarda i messaggi
ahia... ma includere la string.h significa passare dal c al c++, quindi dovrei includere anche la iostream. o sbaglio?
E chi l'ha detto che includere la libreria string.h significa passare al C++ ???

leggi qua string.h

Ultima modifica di banryu79 : 27-01-2008 alle 18:51.
banryu79 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
TikTok punta tutto sull'Europa: un milia...
OnePlus Nord 6 ufficiale: arriva con una...
Google lancia di nascosto un'app AI che ...
Sony lancia The Playerbase per inserire ...
WhatsApp si aggiorna con una nuova app c...
Windows 11 23H2, ricerca nel menu Start ...
Google Chrome introduce il layout vertic...
Artemis II: per la prima volta degli ast...
Battery swap e flotte smart: così nasce ...
Apple affronta un dilemma con il MacBook...
ECOVACS X11 OMNICYCLONE: 19.500 Pa, moci...
ll nuovo HONOR 600 Lite 5G arriva in Ita...
Kindle, addio allo store sui vecchi e-re...
DJI Flip Combo Fly More a 599€ invece di...
Addio cavi e adattatori multipli: Techly...
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: 12:05.


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