Torna indietro   Hardware Upgrade Forum > Software > Programmazione

ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm
ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm
ASUS e HIFIMAN uniscono le forze per creare ROG Kithara, cuffie gaming con driver magnetici planari da 100mm, design open-back e microfono MEMS full-band. Una proposta che ambisce a coniugare fedeltà per audiofili e performance ludiche, disponibili a 319 euro
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-11-2010, 10:01   #1
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
[c#]Aggiungere caratteri ad una stringa

Ciao a tutti

Ho una query scalare che mi restituisce un valore intero, in base a questo valore devo aggiungere dei caratteri ad una stringa, per es.:

Codice:
int counter = (int)myScalarQuery();
string s = "";


if(counter > 0)
{
   for(int i = 0; i < counter; i++)
   {
       s = "X";
   }
}
Mi succede però questo:

anche se il valore è zero, mi aggiunge comunque un carattere.

Come mai ?

Grazie

RaouL.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 08-11-2010, 14:21   #2
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Il codice che hai scritto non aggiunge caratteri.
Dovresti cambiare il codice, ma tieni conto che usare l'operatore + sulle stringhe non e' affatto efficiente, quindi gia' che lo cambi, cambia in meglio e trova un'altra soluzione
(Ad esempio c'e' un bel costruttore che accetta in input un carattere ed un intero...)

Nonstante tutto non si capisce perche' dovresti avere il problema che hai enunciato.
Immagino che counter non sia zero quando invece pensi che lo sia.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 08-11-2010, 14:30   #3
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Il codice che hai scritto non aggiunge caratteri.
Dovresti cambiare il codice, ma tieni conto che usare l'operatore + sulle stringhe non e' affatto efficiente, quindi gia' che lo cambi, cambia in meglio e trova un'altra soluzione
(Ad esempio c'e' un bel costruttore che accetta in input un carattere ed un intero...)

Nonstante tutto non si capisce perche' dovresti avere il problema che hai enunciato.
Immagino che counter non sia zero quando invece pensi che lo sia.
Infatti non era zero

per quanto riguarda l'aggiunta, ho utilizzato adesso sia uno stringbuilder sia un string.Insert. In che modo potrei valutare la miglior efficienza di uno dei due ?
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 08-11-2010, 16:50   #4
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
Infatti non era zero

per quanto riguarda l'aggiunta, ho utilizzato adesso sia uno stringbuilder sia un string.Insert. In che modo potrei valutare la miglior efficienza di uno dei due ?
Puoi provare facendo un test case ad hoc, cercando di creare una stringa da qualche milionata di caratteri e osservando chi vince.

Comunque se si deve fare qualcosa di simile a sopra, continuo a propendere per

s = new string('X', counter);

al posto di tutto il for.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm ASUS ROG Kithara: quando HIFIMAN incontra il gam...
Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Addio GPU? MatX promette un chip 10 volt...
Amazon taglia i prezzi dei dispositivi F...
Amazon, stop del Garante alla raccolta d...
LEGO Game Boy a 45,99€ su Amazon: la con...
Kit Logitech MK950 Signature Slim a 79,9...
Discord rinvia la verifica dell'et&agrav...
Blizzard annuncia Overwatch Rush, lo spi...
Windows 11, l'ultimo aggiornamento opzio...
Intel e SambaNova, nessuna acquisizione ...
Marvel's Wolverine: rivelata la data d'u...
Samsung contrasta la crisi delle memorie...
Stampante Wi-Fi a meno di 40€? HP DeskJe...
Google Pixel 10 base a 563€ è il ...
I nuovi iPhone 18 Pro avranno una fotoca...
Final Fantasy VII Remake Part 3: lo svil...
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: 11:00.


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