Salve a tutti, nonostante la mia ricerca su questo forum, non sono riuscito a trovare ciò che cerco, quindi chiedo direttamente. E' da un po' che vorrei sostituire una stringa statica in una dinamica in un mio sorgente. Mi spiego meglio. Si tratta della parte di un programma più ampio, che acquisisce una stringa ma onde evitare la limitazione dovuta alla staticità, vorrei eliminare il fatto di dichiarare l'array del tipo: array[<<numero di="" elementi="">>] per poi lavorare con questo, sostituendo il tutto con un array che alloca gli elementi durante l'esecuzione. Ovviamente non si è a conoscenza del numero di elementi dell'array prima dell'esecuzione, e non va chiesto un numero massimo di caratteri da poter usare all'utente prima dell'acquisizione. L'output deve essere del tipo: Per cercare di "studiare" il problema, ho scritto questo sorgente in cui ho sfruttato l'idea alla base della soluzione, ma purtroppo crasha quando la stringa raggiunge più o meno i 100 caratteri :(
In generale non credo di essere sulla retta via, chiedo il vostro aiuto :) |
L'errore fondamentale che fai è quello di allocare un solo carattere e poi, anziché usare solo Un modo più efficiente di procedere è quello di leggere non un carattere per volta, ma http://stackoverflow.com/questions/16870485/how-can-i-read-an-input-string-of-unknown-length |
Segui questa domanda
Via email:Una volta eseguito l'accesso potrai iscriverti a tutti gli aggiornamenti qui
Via RSS:Basi di markdown
- *corsivo* o __corsivo__
- **grassetto** o __grassetto__
- collegamento:[testo](http://url.com/ "titolo")
- immagine?
- elenco numerato: 1. Foo 2. Bar
- per aggiungere un'interruzione di riga, aggiungi due spazi a fine riga e premi «Invio»
- è supportato anche semplice HTML
Tag:
domanda posta: 02 Jan '17, 02:51
domanda visualizzata: 2,465 volte
ultimo aggiornamento: 02 Jan '17, 11:24
Non conosco il C, ma avendo usato altri linguaggi, mi sento di dire che potrebbe dipendere dal limite imposto dalla tipologia di stringa usata.